获取私有变量的值

2014-11-23 23:11:48 · 作者: · 浏览: 5

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 ):


NSString *str;

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

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

NSLog(@"%@",str);

[obj release];


3、输出结果:


Ha Ha Ha


Ok,这样就实现了私有变量的访问。

作者“zakowey的博客”