zoukankan      html  css  js  c++  java
  • Objective-C 成员变量

    成员变量的访问权限

    Objective-C中的成员变量有以下三种属性

    • public(外部及其子类可访问)
    • protected(子类可访问,外部不可访问)
    • private(外部及其子类不可访问)

    默认情况下,是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

    注意,这里访问的方式用的是【->】而不是【.】哦哦哦哦

  • 相关阅读:
    HDU 2276
    HDU 2254
    HDU 1536 & 1944
    HDU 1538
    HDU 2177
    HDU 2176
    HDU 1209
    HDU 1254
    c++ 11 default delete
    ssh免密登录
  • 原文地址:https://www.cnblogs.com/chenyg32/p/4803684.html
Copyright © 2011-2022 走看看