6
Использование библиотеки времени выполнения Objective-C, как узнать, является ли объект объектом класса, а не экземпляром класса?Узнайте, является ли объект объектом класса, а не экземпляром класса
Использование библиотеки времени выполнения Objective-C, как узнать, является ли объект объектом класса, а не экземпляром класса?Узнайте, является ли объект объектом класса, а не экземпляром класса
Самый легкий верный способ, который я знаю, это class_isMetaClass(object_getClass(yourObject))
. (Это работает, потому что классы всегда являются экземплярами метаклассов.)
Какая разница между тем, что вы подразумеваете под «объектом, который является классом» и экземпляром класса? –
@Boon: Мне сложно представить, когда это будет важно. В любом случае, когда это важно, вы уже должны знать, чего вы ожидаете. В тех случаях, когда вы не знаете, все, что вам обычно нужно заботиться, это то, что объект клонит, как утка. Если это важно, и вы не знаете, это звучит как проблема дизайна, для которой обнаружение ответа - это всего лишь полоса. Я согласен, что это законный вопрос. – Chuck