object-c定义属性与成员变量的区别
来源:互联网 发布:洲际巡航导弹知乎 编辑:程序博客网 时间:2024/05/21 17:47
object-c定义属性与成员变量的区别
1、关于@synthesize object = _object:
我们经常这样写:
@interface Class:NSObject{ NSString *_name;}@property(nonamtic, copy) NSString *name;@end@implementatin Class@synthesize name=_name;
像这样的写法最关键的是避免一些错误
我们都知道,关键词@property和@implementatin是为成员变量自动实现getter和setter方法,例如上面代码
如果写@synthesize name=_name时getter方法为:
-(NSString *)name{ return _name;}
如果写@synthesize name时getter方法为:
-(NSString *)name{ return name;}
这样就使得函数名和属性名重名,会出现意想不到的错误,所以为了避免这种Bug,我们多数采用第一种方式。
2、属性是用self.object,通过getter方法来调用的,可以在类外使用。而变量是通过指针_object来调用,只能在该类对应的implementation中使用,在类外不能使用。
3、对于retain修饰的属性,属性可以起到内存管理功能。
0 0
- object-c定义属性与成员变量的区别
- object-c定义属性与成员变量的区别
- ios 属性与成员变量的区别
- ios--成员变量与属性的区别
- iOS 成员变量与属性的区别
- 类变量、成员变量、实例变量、局部变量、静态变量、全局变量的定义与区别
- OC-属性与成员变量的简单介绍与区别
- 实例变量与成员变量的区别 Objective-C
- OC中类的属性与成员变量的区别
- 【转】iOS中属性与成员变量的区别
- IOS中属性与成员变量的区别
- iOS中属性与成员变量的区别
- iOS中属性与成员变量的区别
- iOS中属性与成员变量的区别
- 【转】iOS中属性与成员变量的区别
- iOS中属性与成员变量的区别
- OC学习笔记-属性与成员变量的区别
- iOS中属性(@proerty)与成员变量的区别
- 2015校园O2O商业模式解析——从社交切入
- 54.多线程第一章
- android重难点解析
- C选择和冒泡排序程序心得
- 实战c++中的string系列--不要使用memset初始化string(一定别这么干)
- object-c定义属性与成员变量的区别
- hdu 2853 Assignment KM好题
- 2015校园O2O商业模式解析——从水果切入
- matlab 批处理图片
- 自己动手写cocos2dx游戏引擎(三)——Director对象
- 几何矩1
- Gradle多渠道打包
- 无法查找或打开 PDB 文件。
- unity发布程序的选项