iOS 之 OC中指針與對(duì)象的區(qū)別

此篇想糾正一直以來(lái)很多人對(duì)理解指針與對(duì)象概念的誤區(qū), 舉一些簡(jiǎn)單的例子:

比如:

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

在這里的 image 實(shí)質(zhì)是一個(gè)指針變量, 并且該指針指向了利用 UIImage 類 進(jìn)行 alloc - init 創(chuàng)建出來(lái)的實(shí)例對(duì)象, 而對(duì)象則保存在內(nèi)存中的某個(gè)位置, 只不過(guò)這個(gè)對(duì)象被一個(gè)指針變量 image 引用著.

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

上面是取出 image 指針變量的地址, 和 image 指針指向?qū)ο笏趦?nèi)存空間的地址進(jìn)行打印 .

0x100001030, 0x7fff5fbff6f8

打印之后,顯示是截然不同的兩個(gè)地址.

希望大家不要混淆對(duì)象和指針的關(guān)系, 也不要誤以為指針就是對(duì)象.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容