динамические свойства в объекте c

Я обнаружил, что свойства объекта Objective-C могут быть помечены как @dynamic , чтобы компилятор знал, что реализация будет доступно во время выполнения. Я хотел бы знать, есть ли способ сообщить компилятору, что все свойства объекта являются динамическими, без явного указания их по одному (у меня нет списка свойств заранее). Я знаю, что это не было бы проблемой, если бы я просто использовал [объект что-то] , но в стилистических целях я хочу использовать объект .something синтаксис.

Я почти уверен, что это невозможно, но мне бы хотелось, чтобы кто-нибудь это подтвердил. Поскольку это решение не для производственного использования, оно может включать в себя все, что вы можете себе представить.

Спасибо.

Дополнительная информация:

  • Меня интересует только работа -something (getter), поэтому, если ваше решение не поддерживает сеттеры, это нормально.

Пример:

@interface MagicalClass : NSObject
// property 'something' is not defined!
@end

@implementation MagicalClass
- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector { ... }
- (void)forwardInvocation:(NSInvocation *)anInvocation { ... }
@end

MagicalClass *obj = [[MagicalClass alloc] init];
[obj something]; // compiler warning
obj.something; // compiler error
5
задан cppforlife 29 September 2011 в 04:58
поделиться