成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Objecitive-C中的nil

移動開發 iOS
nil是一種類型,它只有一個值nil,它的主要功能是用于區別其他任何值,就像之前所說的,一個全局變量在第一次賦值前的默認值就是nil,將nil賦予一個全局變量等同于刪除它,Lua將nil用于表示一種“無效值(non-value)”的情況,既沒有任何有效值的情況。

當我學習OC的時候,我總是忍不住在對比。Actionscript是如何實現,而oc又是如何實現。這不,碰到nil的時候我發現了很大的不同之處。做個筆記。


在as中,如果將一個對象置為null,相當于空指針,那么后續對該對象的操作會報錯。而在編碼中,我們常常會判斷if(obj == nul )來判斷該對象是否存在,存在的話才可以進行后續操作。

而在oc中,nil就相當于c、c++中的NULL指針,一般釋放對象后將對象置為nil非常重要,這樣可以防止引用非法指針導致程序崩潰掉。

  1. [obj release];//此時obj的引用計數為0 
  2. [obj someMethod];//程序崩潰 
  3. [obj release]; 
  4. obj = nil; 
  5. [obj someMethod];//obj此時為nil,但不會崩潰 

在objective-c中我們只用nil來檢查程序的邏輯,而不用于判斷對象是否為空來避免崩潰。這與c++是不同。objective-c在運行時會自動處理向nil對象發送消息(調用方法),不會報錯崩潰掉。

責任編輯:閆佳明 來源: oschina
相關推薦

2015-03-13 09:36:09

NULLnullptr

2014-08-14 10:12:45

SwiftNil Coalesc

2009-12-16 14:51:26

Ruby nil

2024-01-15 07:08:34

IsNil方法結構體

2022-06-13 07:03:25

Go 語言怎么優化重

2020-12-17 06:25:05

Gopanic 模式

2010-01-21 14:07:14

CC++聲明

2010-01-21 09:34:57

C++語法

2010-01-27 16:05:06

C++堆棧

2011-07-20 10:06:54

CC++const

2011-04-11 11:09:50

this指針

2021-12-27 08:53:23

Go函數 Nil

2010-01-20 10:19:55

C++數組

2010-01-25 10:25:19

C++變量

2010-01-27 17:16:52

C++構造函數

2010-01-28 16:31:54

C++類型

2020-07-31 18:33:56

C++編程語言

2019-08-28 14:21:39

C++C接口代碼

2010-01-21 13:33:44

C++基類

2020-08-21 13:20:36

C++If ElseLinux
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 综合九九 | 日韩欧美在线观看 | 国产精成人 | 超级乱淫av片免费播放 | 色www精品视频在线观看 | 国产一区二区三区四区在线观看 | 成人在线观看免费 | 午夜爽爽爽男女免费观看影院 | 色综合天天天天做夜夜夜夜做 | 亚洲免费在线观看 | 国产高清视频一区 | 亚洲视频欧美视频 | 在线视频成人 | 91九色在线观看 | 久久99视频 | 成人一区二区三区视频 | 免费看国产一级特黄aaaa大片 | 黄页网址在线观看 | 欧美一级特黄aaa大片在线观看 | 四虎永久免费地址 | 亚洲一区二区三区四区五区中文 | 成人在线视频一区 | 日本三级做a全过程在线观看 | 日韩欧美国产精品 | 在线国产视频 | 亚洲视频免费观看 | 国产成人免费视频网站高清观看视频 | 国产成人精品一区二区三 | 欧美国产亚洲一区二区 | 婷婷色网 | 成人福利在线观看 | 午夜影院官网 | 日本不卡一区二区 | 久久一区精品 | 毛片久久久 | 亚洲欧美精品国产一级在线 | 精品久久久久久中文字幕 | 中文字幕一区在线观看视频 | 欧美日韩国产一区 | 综合色久 | 99re视频在线|