NSArray 不是OC裏的內置數據類型,隻是Cocoa庫中的一個常用類。 那麼用objectAtIndex方法,通過傳入index參數進行訪問NSArray裏的元素,例如[arr objectAtIndex:5]即調用方法,這是可以理解的。但是arr[5]這種寫法,為什麼是屬於合法的呢?按理說NSArray不是語言層的東西,應該是更高層級的,怎麼還能有特殊的方法調用?
天蓬老师2017-04-21 11:19:18
這是Objective-c LLVM 4.0 的新特性。
推薦參考文章:http://blog.csdn.net/kindazrael/article/details/8091201
巴扎黑2017-04-21 11:19:18
所謂的語法糖,讓程式設計師寫起來更方便,幾乎所有的主流程式語言都支援這樣的特性,而不是說高階不高階的問題,難道越高級就該越麻煩?沒有這樣的道理。
再進一步,objectAtIndex和語法糖的作用有區別嗎,最終計算機看到的是0和1,所以還有什麼不是語法糖呢?