سؤال

يُرجع الوصف الافتراضي لمثيل الفئة "ClassName:0x105120".كيف يمكنني تعديل الطريقة أدناه لإرجاع "ClassName" فقط؟

// The code below just returns the address ...
- (NSString *)description {

 NSString *result;

 result = [NSString stringWithFormat:@"%p", self];
    return result;
}

يحرر:في هذه الحالة هل سيكون هذا صحيحا؟على الرغم من أنني أفهم أنه إذا كنت أرغب بالفعل في الحصول على className باعتباره NSString، فيجب علي استخدام NSStringFromClass([self class])

- (id)init {
 NSLog(@"_init: %@", [self class]);
 [super init];
 return self;
}

شكرا مقدما -غاري-

هل كانت مفيدة؟

المحلول

نظام التشغيل ايفون: NSStringFromClass([self class])
ماك: [self className]

...يمنحك NSString باسم الفئة

يحرر:

بالنسبة لكل من iPhoneOS وMacOS، الطريق الذي يجب اتباعه هو:

NSStringFromClass([self class])

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top