博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
<iOS>属性写法
阅读量:4115 次
发布时间:2019-05-25

本文共 437 字,大约阅读时间需要 1 分钟。

@synthesize name;

- (void)setName:(NSString *)theName {

    if (theName == name) {

// 注意1

        return;

    }

    [name release];

    name = nil;

    

    name = [theName retain];

}

- (NSString *)name {

    [name retain]; // 注意2

    [name autorelease]; // 注意3

    return name;

}

注意1,2,3,这三个点, 可以解决下面的情况

NSString *s = self.name;

self.name = s;

// 如果不像注意1,2,3,上面这样写, 就可能会出现self.name=错误内存, 

同样, 注意1中, 可以解决到这个问题, self.name = @"china"; self.name=@"china"; 执行两次,就会遇到问题, 所以”注意1“这里可以解决这个问题

转载地址:http://vgwpi.baihongyu.com/

你可能感兴趣的文章
2017——新的开始,加油!
查看>>
【Python】学习笔记——-6.2、使用第三方模块
查看>>
【Python】学习笔记——-7.0、面向对象编程
查看>>
【Python】学习笔记——-7.2、访问限制
查看>>
【Python】学习笔记——-7.3、继承和多态
查看>>
【Python】学习笔记——-7.5、实例属性和类属性
查看>>
Linux设备模型(总线、设备、驱动程序和类)之四:class_register
查看>>
git中文安装教程
查看>>
虚拟机 CentOS7/RedHat7/OracleLinux7 配置静态IP地址 Ping 物理机和互联网
查看>>
弱类型、强类型、动态类型、静态类型语言的区别是什么?
查看>>
Struts2技术内幕图书 转载
查看>>
Java异常分类
查看>>
项目中的jackson与json-lib使用比较
查看>>
Jackson Tree Model Example
查看>>
j2ee-验证码
查看>>
日志框架logj的使用
查看>>
js-高德地图规划路线
查看>>
常用js收集
查看>>
mydata97的日期控件
查看>>
如何防止sql注入
查看>>