उद्देश्य-सी में, यदि गुण गुण nil
[obj.property class]
nil
का उपयोग कर देता है तो मैं गुण-सी कक्षा की शून्य संपत्ति का वर्ग नाम कैसे प्राप्त करूं। क्या उद्देश्य-सी वर्ग की शून्य संपत्ति का वर्ग नाम प्राप्त करने का कोई तरीका है?ऑब्जेक्टिव-सी क्लास
यहाँ एक बहुत ही सरल उदाहरण है:
#import <Foundation/Foundation.h>
@interface MyClass : NSObject
@property (nonatomic, assign) NSDictionary *dict;
@end
@implementation MyClass
@end
int main(int argc, char *argv[]) {
@autoreleasepool {
MyClass *c = [[MyClass alloc] init];
NSLog(@"class %@, %@", [c.dict class], [c.dict isKindOfClass:[NSDictionary class]] ? @"YES" : @"NO");
}
}
आउटपुट class (null), NO
आप शर्त लगा सकता है: [मैं एक की ObjC वर्ग कैसे मिलता है ivar?] (http://stackoverflow.com/q/11265503) –
@ जोश कैसवेल भले ही इवार का मूल्य 'शून्य 'है? –
@ माइकडी के पास संपत्ति के * मूल्य * से कोई लेना देना नहीं है। एक पल के लिए इसके बारे में सोचो। –