Можно ли программно определить, какими свойствами обладает класс?
Можно ли программно определить, какими свойствами обладает класс? Я хочу увидеть, какие свойства определил класс (или подкласс). Мне сказали, что это связано с тем, что называется самоанализом во время выполнения. Я нашел Эту статью, но, похоже, это только верхушка айсберга.
Итак, можно ли программно определить, какими свойствами обладает класс? Но как?
Редактировать:
Я работаю на iOS, а не на Mac OS X. какие заголовки мне нужны импорт?
1 ответ:
Руководство по программированию среды выполнения Objective-C содержитраздел о свойствах листинга . Соответствующий фрагмент кода, который фактически получает список:
id LenderClass = objc_getClass("Lender"); unsigned int outCount; objc_property_t *properties = class_copyPropertyList(LenderClass, &outCount);
Затем вы используете функции свойств среды выполнения, чтобы получить любую информацию, которую вы хотите о каждом свойстве в списке.