Objective-C学习笔记之获取私有变量的值

Objective-C学习笔记之获取私有变量的值是本文要介绍的内容,主要讲述了如何获取私有变量的值,来看本文详细内容。

1、下面是自己定义的一个类,里面有一个私有变量mt_,并且在初始化值为"Ha Ha Ha"。

@interface Mobj : NSObject {  


@private  


    NSString *mt_;  


}  


@end  


 


@implementation Mobj  


- (id)init {  



    self = [super init];  



    if (self) {  



        mt_ = [[NSString alloc] initWithString:@"Ha Ha Ha"];  



    }  


    return self;  


}  


- (void) dealloc {  


    [mt_ release];  


    [super dealloc];  


}  


@end 

2、下面的代码就是怎样获取私有变量(记得加头文件#import <objc/runtime.h>):

NSString *str;  



 Mobj *obj = [[Mobj alloc] init];  



 object_getInstanceVariable(obj, "mt_", (void *)&str);  


 NSLog(@"%@",str);  


 [obj release]; 

3、输出结果:

Ha Ha Ha 

相关推荐