IOS 基礎知識(屬性修飾符篇)

IOS 開發中常用到的修飾符有:assgin,retain,copy,strong,weak,atomic(這里說的是arc下)

1:assgin

簡單的賦值 不更改索引計數? 一般修飾的是基本的數據類型 如:NSIntger,CGFloat,int,float,double,char 這里要知道 基本的數據類型是分配在棧上的 棧的內存會由系統自己處理

寫法:@property (nonatomic,assign) float number;

注:assgin 也可以修飾對象;一般情況下不會使用,是因為被assgin 修飾的對象在釋放之后,指針的地址還是存在的,也就是說指針并沒有被置為nil,從而引起也指針的問題。對象一般分配在堆上的某塊內存,如果在后續的內存分配中,剛好分配到了這塊地址,程序就會crash

2:retain

釋放舊的對象,將舊對象的值賦予輸入對象,同時進行引用計數加1.

3:copy

4:strong

5:weak

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • __block和__weak修飾符的區別其實是挺明顯的:1.__block不管是ARC還是MRC模式下都可以使用,...
    LZM輪回閱讀 3,354評論 0 6
  • 關于iOS修飾符 首先強調一下: 強引用:當前對象被其他對象引用時,會執行retain操作,引用計數器+1。當re...
    Mayss閱讀 1,228評論 0 52
  • 307、setValue:forKey和setObject:forKey的區別是什么? 答:1, setObjec...
    AlanGe閱讀 1,575評論 0 1
  • 多線程、特別是NSOperation 和 GCD 的內部原理。運行時機制的原理和運用場景。SDWebImage的原...
    LZM輪回閱讀 2,026評論 0 12
  • 我年少時,姥爺、姥姥居住在渦河岸邊的一座四合院里。 院子一邊是水泥地,供行走。姥姥愛干凈,天氣好的時候經常會大掃除...
    milk411閱讀 860評論 1 3