您的位置:首页 > 其它

OC中声明变量的几种方式

2015-05-23 20:56 302 查看
第一种.  

      .h文件里 

         @interface Test : NSObject{

               NSString *s;

}          

第二种.  

     .h文件里

         @interface Test : NSObject{

                NSString *s;;

           }

          @property (copy, nonatomic) NSString *s; 

     .m文件里

        @synthesize s = _s;

第三种.

     .h文件里

         @interface Test : NSObject{

           }

          @property (copy, nonatomic) NSString *s; 

    .m文件里

        @synthesize s = _s;  //有没有都无所谓

方式一  声明的成员变量只能在类内部使用。

方式二  显然是一种已经过时的方式,xcode在没有自动合成属性器之前,需要手写getter与setter方法、,下划线从风格上表明这是类的内部变量,要是需要直接使用变量则需要使用get或者set的方式。

XCode有了自动合成属性器后,编译器会自动帮我们生成一个以下划线(_)开头的的实例变量,所以我们不必去同时声明属性与变量。

方式三   推荐使用 目前主流的使用方式。在.m里加不加 @synthesize s = _s;  都无所谓。

  一定注意@synthesize方法放到@implementation......@end之内~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息