如果我有一個副本屬性,並將其設置爲另一個對象,其實我創建一個新的對象與1的iOS複製特性創建新對象,保留,內存分配
@property (copy) myObject;
myobject = someOtherObject;
//&myOBject != &someOtherObject
一個保留計數在這點,讓我們調用myObject的地址& myObject1。
如果我去做到這一點後,我設置myObject的到someOtherObject
myObject = someOtherObject2
會發生什麼& myObject1?現在,myObject指向的值等於someOtherObject2的值,但是位於新的內存地址處。 & myObject1會發生什麼,還有什麼東西仍然指向它?
那麼如果我將它設置爲'someOtherObject'是可變的,然後我將它設置爲'someOtherObject2',這也是可變的?在我第二次設置後,'&myObject'會發生什麼? – noobsmcgoobs
您需要指定「它」是什麼。用一個指定對象類型(可變或不可變)的完整示例更新你的問題會更好。類型的簡單選擇是'NSMutableString'和'NSString'。 – zaph