2010-08-12 20 views
5

我想問一個關於目標C的問題。當我從蘋果開發者網站上學習圖書館時。我總是看到有一個叫做「mutable」的子類。例如,NSArray和NSMutableArray。這個詞是什麼意思。有一些特殊的含義嗎?誰能告訴我?謝謝。目標C中「可變」的含義是什麼?

回答

4

這意味着你可以改變它的值。如果你看看NSMutableArray文檔,你會看到它定義了額外的方法,如-addObject:。 NSArray本身並不具備這些特性(因此可以更高效地執行內存)。

另外請注意,如果你調用[myMutableArray copy]你會得到它的不可變副本(你以後必須release0,而且同樣有-mutableCopy

1

易變意味着你可以改變它,看看之間的區別ADDOBJECT中的NSMutableArray和arrayByAddingObject在NSArray中

1

從​​做出了回答各國您的具體問題:

有兩種陣列(和通常面向大多數數據的210類基金會 類)NSArray和NSMutableArray。 顧名思義,可變是 可變,NSArray然後不是。這 意味着你可以做一個NSArray,但是一旦你有你不能改變長度的 。

此技術說明也意味着你可以變化後陣一個可變數組的長度已創建。

一般mutability stems from these meanings。這將有助於爲您在別處遇到問題時提供更廣泛的瞭解。