2014-10-10 1 views
0

я могу проверить, если свойство существует так:Как проверить, объявлена ​​ли переменная?

#import <objc/runtime.h> 
-(void)testcachedPublicFeedExists 
{ 
    objc_property_t prop = class_getProperty([store class], "cachedPublicFeed"); 
    XCTAssertTrue(prop); 
} 

Но как я могу проверить, существует ли переменная класса как cachedVar?

@interface FTDataStoreBase : NSObject 
{ 
    NSMutableArray *cachedVar; 
} 

ответ

0

Вы можете использовать эти методы class_getInstanceVariable или class_getClassVariable.

- (void)testcachedVarExists 
{ 
    Ivar ivar = class_getInstanceVariable([store class], "cachedVar"); 
    XCTAssertTrue(ivar); 
} 

Узнать больше на Apple docs.

+0

Вы уверены, что это сработает? Я решил это так: 'Ivar prop = class_getInstanceVariable ([store class]," cachedPublicFeed "); XCTAssertTrue (prop); ' – Houman

+0

@Hooman Да, я имел в виду это, но написал что-то еще. Отредактировал ответ. – quaertym

 Смежные вопросы

  • Нет связанных вопросов^_^