标签:
Objective-C中的成员变量有以下三种属性
默认情况下,是protected属性
例子:类A有3个属性,类B是类A的子类,main函数对于类A来说是外部。
A.h
@interface A : NSObject { @public int publicVar; @protected int protectedVar; @private int privateVar; } @end
main.m
int main(int argc, const char * argv[]) { @autoreleasepool { A *a = [[A alloc] init]; a->publicVar = 1; //OK a->protectedVar = 2; //Error 编译不过 a->privateVar = 3; //Error 编译不过 } return 0; }
B.m
@implementation B - (void)f { B *b = [[B alloc] init]; b->publicVar = 1; //OK b->protectedVar = 2; //OK b->privateVar = 3; //Error 编译不过 } @end
注意,这里访问的方式用的是【->】而不是【.】哦哦哦哦
标签:
原文地址:http://www.cnblogs.com/chenyg32/p/4803684.html