मैं एक आवृत्ति चर बनाने के बिना एक संपत्ति जोड़ने की कोशिश कर रहा हूँ। क्या इसे करना संभव है? या आप ऐसा कुछ ऐसा कर सकते हैं जो संपत्ति नहीं है?उदाहरण के बिना एक संपत्ति जोड़ें?
उदाहरण:
@interface RandomClass()
@property (nonatomic) int value;
@end
@implementation RandomClass
@synthesize value = _value;
// Here I override the default methods @synthesize
-(int)value
{
return 8; // Actually I'm returning something more complex, so a "define" won't work
}
-(void)setValue:(int)value
{
self.someOtherValue = value;
}
उपरोक्त कोड में, मैं उदाहरण चर _value
का उपयोग नहीं कर रहा हूँ! चर बनाने के बिना ऐसा करने का कोई तरीका है? आप गेटर लागू कर रहे हैं के बाद से
यदि आप एक संपत्ति घोषित करने जा रहे हैं, भले ही इसे घोषित ivar द्वारा समर्थित किया गया हो या नहीं, तो आपके पास इसके लिए '@ संश्लेषण 'या' गतिशील 'घोषणा होनी चाहिए। ओपी में शायद 'गतिशील' घोषणा हो। और उस मामले में, और कोड में उनकी टिप्पणियां क्या कहती हैं, उन्हें शायद घोषित इवर की आवश्यकता नहीं है। – kamprath
यही वह है जिसे मैं ढूंढ रहा था! बहुत बहुत धन्यवाद! – tomidelucca
@claireware: इसके विपरीत, यदि संकलक देख सकता है कि विधियां लागू की गई हैं, तो 'गतिशील' की कोई आवश्यकता नहीं है। ["संपत्ति कार्यान्वयन निर्देश" देखें] (https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ObjectiveC/Chapters/ocProperties.html#//apple_ref/doc/uid/TP30001163-CH17-SW9):
–