博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ios_基础篇1_关键字(strong和weak)
阅读量:6063 次
发布时间:2019-06-20

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

  hot3.png

废话不多说的咧!直接吃猪蹄!有开发ios5之前的版本的童鞋就知道在ios5以上(ios5不行,而且关键字weak没有提示,敲出来不会报错)的属性设置多了strong和weak这两个东东。有啥用呢有啥区别呢。简单的说呢就是为了支持ARC模式而生的(what's the ARC?that's right,here is the answer:代码中自动加入了retain/release,原先需要手动添加的用来处理内存管理的引用计数的代码可以自动地由编译器完成了,可以了吧!!!)。下面单独来讲下两个关键字:

1.strong(与retain作用类似,可以说是用来代替retain),下面代码说明一下:

@property (nonatomic, strong) NSString *tempStr1;   @property (nonatomic, strong) NSString *tempStr2;
然后声明一下:

@synthesize tempStr1;   @synthesize tempStr2;

然后赋值调用:

self.tempStr1 = @"hello World";   self.tempStr2 = self.tempStr1;   self.tempStr1 = nil;  NSLog(@"tempStr2 = %@", self.tempStr2);
运行结果:
tempStr2 = hello World
2.weak(观察下与strong的区别):

@property (nonatomic, strong) NSString *tempStr1;   @property (nonatomic, weak) NSString *tempStr2;

然后声明一下:

@synthesize tempStr1;   @synthesize tempStr2;
然后赋值调用:

self.tempStr1 = [[NSString alloc] initWithUTF8String:"hello World"];self.tempStr2 = self.tempStr1;self.tempStr1 = nil;NSLog(@"tempStr2 = %@", self.tempStr2);

好了暂时先那么多!

转载于:https://my.oschina.net/dadas/blog/89634

你可能感兴趣的文章
cursor:not-allowed
查看>>
用maven插件自动生成mybatis代码(转载http://blog.csdn.net/yinkgh/article/details/52512983)...
查看>>
TortoiseGit上传代码到GitHub
查看>>
hdu 2462 poj 3696 The Luckiest number fzu 1017 zoj 1537 Playing with Calculator
查看>>
检验函数运行时间
查看>>
【转】Objective-C学习笔记八:类的定义二
查看>>
黑马程序员-基础部分
查看>>
ASP.NET伪静态及静态优越点
查看>>
latin1字符集在navicat下显示乱码(mysql)
查看>>
算法19-----(位运算)找出数组中出现只出现一次的数
查看>>
数据降维度
查看>>
c# windows服务如何获取自己的安装路径
查看>>
Mongodb
查看>>
牛客小白月赛 G 异或 找规律
查看>>
HDU 1053 Entropy
查看>>
Leetcode c语言-3Sum Closest
查看>>
一道笔试题引发的血案之查看程序运行结果
查看>>
enterprise portal
查看>>
iptables(转!写的很不错)
查看>>
linux 系统shell运行程序不退出
查看>>