2011-12-17 59 views
0

我的問題是如果我們插入一些其他對象,值是如何保留。 像,如果我有UILabel對象已被保留,我設置其他NSString的文本是不保留。 我的問題是在將來的某個時刻,如果我改變NSString的值,它是否會在UILabel中發生變化? 如果我們將其添加到某個其他對象,那麼如何保留任何對象的值? 謝謝, Snehal梅塔如果我們將其添加到其他對象,值如何保留

回答

1

與唱片公司/串例如,你有什麼好擔心的原因有二:

  • NSString的是不可改變的,所以你不能將其分配給後更改值標籤,除非你指定一個NSMutableString來代替,並且稍後改變它,但是...
  • 字符串屬性通常實現爲copy,所以當你分配一個值時,接收對象會自己創建一個字符串的內部副本,意思是原始對象與它沒有關係。

因此,如果您對對象進行後續更改,則複製類型的屬性不會受到影響。其他屬性類型只是指向原始對象的指針,所以如果該對象是可變的,則隨後的更改將改變基礎屬性。

相關問題