最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

IOS 基礎(chǔ)之nil,NULL,NSNULL區(qū)別詳解

 更新時間:2017年04月13日 17:08:46   投稿:lqh  
這篇文章主要介紹了IOS 基礎(chǔ)之nil,NULL,NSNULL區(qū)別詳解的相關(guān)資料,需要的朋友可以參考下

IOS 基礎(chǔ)之nil,NULL,NSNULL區(qū)別詳解

① nil:一般賦值給空對象。

② NULL:NULL 是一個通用指針(泛型指針)。

一般賦值給 nil 之外的其他空值。如SEL等。

③ NSNULL:[NSNull null] 是一個對象,他用在不能使用 nil 的場合。

因為在 NSArray 和 NSDictionary 中 nil 有特殊的含義(表示列表結(jié)束),所以不能在集合中放入 nil 值。如要確實需要存儲一個表示“什么都沒有”的值,可以使用 NSNull 類。NSNull只有一個方法:

+ (NSNull *) null;

④ 當(dāng)向 nil 發(fā)送消息時,返回 NO,不會有異常,程序?qū)⒗^續(xù)執(zhí)行下去。

而向 NSNull 的對象發(fā)送消息時會收到異常。

實例:

nil 是對objective c id 對象賦空值

例如

NSString * string = [NSString stringWithFormat:@"test"];
  string = nil;

對于objective c 集合類對象 比如數(shù)組對象,字典對象,當(dāng)我們不需要再使用他們的時候,對他們release 的同時最好也把他們賦值為nil,這樣確保安全性,下面一個簡單的一個例子:如果不賦值nil,可能導(dǎo)致程序崩潰

NSArray * array = [NSArray arrayWithObjects:@"test",@"test1" ,nil];
  [array release];
  
  if (array)
  {
    //僅僅對數(shù)組release,并沒有賦空值的話,在程序某個地方如果繼續(xù)對數(shù)組操縱,程序直接崩潰
    NSString * string = [array objectAtIndex:0];
    NSLog(@"%@",string);
  }

編程的時候?qū)项悓ο笙荣x值為nil,再將其release這樣可以保證程序安全性,蘋果官方例子中也看到過viewDidUnload把對象賦值nil,然后在dealloc方法中將他們release,

Nil: A null pointer to an Objective-C class.表示對類進行賦空值

NULL: A null pointer to anything else,  is for C-style memory pointers. 用于對非對象指針賦空值,比如C指針

NSNull 對于像NSArray這樣的類型,nil或NULL不能做為加到其中的Object,如果定義了一個NSArray,為其分配了內(nèi)存,又想設(shè)置其中的內(nèi)容為空,則可以用[NSNULL null】返回的對象來初始化NSArray中的內(nèi)容

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • iOS之UIWebView無法獲取web標(biāo)題的解決方法

    iOS之UIWebView無法獲取web標(biāo)題的解決方法

    這篇文章主要為大家詳細(xì)介紹了iOS之UIWebView無法獲取web標(biāo)題的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • IOS中判斷卡頓的方案總結(jié)

    IOS中判斷卡頓的方案總結(jié)

    這篇文章主要介紹了IOS中判斷卡頓的方案總結(jié),對IOS性能感興趣的同學(xué),一定要看一下
    2021-04-04
  • iOS開發(fā)基礎(chǔ)之C語言

    iOS開發(fā)基礎(chǔ)之C語言

    現(xiàn)在越來越多的iOS開發(fā)興趣愛好者投入到了iOS培訓(xùn)中,有的是已經(jīng)在職的員工,有的是還在就讀的學(xué)生,還有一些是完全零基礎(chǔ)的同學(xué),那么對于他們來說就要一切從基礎(chǔ)開始學(xué),首先從C語言學(xué)起
    2015-11-11
  • ios設(shè)備使用iframe寬度超出屏幕的解決方法

    ios設(shè)備使用iframe寬度超出屏幕的解決方法

    這篇文章主要給大家介紹了關(guān)于ios設(shè)備使用iframe寬度超出屏幕的解決方法,文中通過示例代碼介紹的非常詳細(xì),對各位ios開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • ios實現(xiàn)tableView頂部彈簧圖片效果

    ios實現(xiàn)tableView頂部彈簧圖片效果

    這篇文章主要為大家詳細(xì)介紹了ios實現(xiàn)tableView頂部彈簧圖片效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • iOS開發(fā)教程之WKWebView與JS的交互

    iOS開發(fā)教程之WKWebView與JS的交互

    這篇文章主要給大家介紹了關(guān)于iOS開發(fā)教程之WKWebView與JS的交互的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對各位iOS開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • IOS 開發(fā)中發(fā)送e-mail的幾種方法總結(jié)

    IOS 開發(fā)中發(fā)送e-mail的幾種方法總結(jié)

    這篇文章主要介紹了IOS 開發(fā)中發(fā)送e-mail的幾種方法總結(jié)的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • iOS如何自定義步驟進度條實例詳解

    iOS如何自定義步驟進度條實例詳解

    這篇文章主要給大家介紹了關(guān)于iOS如何自定義步驟進度條的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • iOS仿郵箱大師的九宮格手勢密碼解鎖

    iOS仿郵箱大師的九宮格手勢密碼解鎖

    這篇文章主要為大家詳細(xì)介紹了iOS仿郵箱大師的手勢密碼解鎖的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-04-04
  • 使用scrollTop()解決IOS中輸入法遮擋輸入框問題

    使用scrollTop()解決IOS中輸入法遮擋輸入框問題

    ios瀏覽器上輸入法會彈出遮擋輸入框問題,下面小編給大家分享scrollTop()解決IOS中輸入法遮擋輸入框問題,一起看看吧
    2017-09-09

最新評論

山丹县| 龙山县| 黄冈市| 汝阳县| 滦平县| 讷河市| 崇仁县| 岱山县| 泰和县| 天峨县| 含山县| 都昌县| 化州市| 桐柏县| 望奎县| 开化县| 辛集市| 平谷区| 浪卡子县| 苏州市| 大安市| 余江县| 阳泉市| 开原市| 竹北市| 普兰县| 辰溪县| 仪征市| 育儿| 石门县| 广灵县| 梓潼县| 绥滨县| 绥江县| 沂南县| 顺平县| 祁东县| 高雄市| 绩溪县| 博爱县| 江孜县|