很容易理解簡單數據的setter/getter概念,例如NSInteger。無法理解帶對象的getter/setter
如果我們說:NSInteger a;
「a」的setter更改a的值,並且getter只獲取(返回)其值。因此原子/非原子概念很容易理解,因爲原子將保證當chnaged時讀「a」將始終返回一個完整的值(getter和setter被同步)。
但是我不清楚的是setter和getter是指向對象的指針的屬性(例如NSData *,NSString *)。比方說,例如一個NSMutableData:
如果我們說:NSMutableData * m_my_mutable;
想象一下,我有一個setter setMyMutable和getMyMutable屬性屬於我的對象MyObject。如果我這樣做,那麼我會打電話給吸附材料(因爲我追加數據之前獲取的對象):
[myObject的getMyMutable] appendData ....]
但appendingData也將修改,因此要高度重視不是它被看作是一個二傳手行動嗎?或者,制定者只是指啓動價值的事實(例如可以保留)。
這個概念中我必須忽略一些東西。
感謝 Apple92