Say есть класс, который содержит два различных свойства, такие как:Objective-C: условно назвать различные свойства
@interface MyClass : NSObject
@property id valueWhenNO;
@property id valueWhenYES;
@end
При использовании этого класса с логическим значением называется «состояние», я знаю, что могу получить имущество по в ИТС государстве »путем:
MyClass *myClass;
id value = state ? myClass.valueWhenYES : myClass.valueWhenNO;
Но я обнаружил, что, используя много условного оператора в сложном коде может сделать читаемость его очень трудно. Поскольку я не намерен предоставлять информацию «Состояние» в «MyClass», в «MyClass» не может быть дополнительного логического свойства.
Есть ли какой-либо способ в классе Objective-C, который можно использовать для условного получения свойства с короткой строкой кода, например, следующим образом?
id value = myClass.valueByState;
Вы можете сделать методы свойств, чем вводить свои условные выражения в реализации. – kezi