iOS 之 OC中指针与对象的区别

2020-04-03  本文已影响0人  恍然如梦_b700

纠正一直以来很多人对理解指针与对象概念的误区, 举一些简单的例子:

比如:

UIImage *image = [[UIImage alloc] init];

在这里的 image 实质是一个指针变量, 并且该指针指向了利用 UIImage 类 进行 alloc - init 创建出来的实例对象, 而对象则保存在内存中的某个位置, 只不过这个对象被一个指针变量 image 引用着.

NSLog(@"%p - %p",&image, image);

上面是取出 image 指针变量的地址, 和 image 指针指向对象所在内存空间的地址进行打印 .

0x100001030, 0x7fff5fbff6f8

打印之后,显示是截然不同的两个地址.

希望大家不要混淆对象和指针的关系, 也不要误以为指针就是对象.

上一篇下一篇

猜你喜欢

热点阅读