OC的內存管理有兩種機制:
1案站、MRC 手動管理
2庵寞、ARC 自動管理
oc采用了類似于c、c++的內存機制拟赊,但是相對于他們先進一些;
oc中的所有對象都繼承與NSObject粹淋,當創(chuàng)建一個對象的時候吸祟,對象指向一個內存地址,當我們把這個對象賦給另一個對象的時候桃移,這時就產(chǎn)生了一次copy屋匕,也就是oc中的retain操作,兩個對象同時指向一個內存地址借杰,但是在oc中存在一個refrence count的計數(shù)器过吻,當產(chǎn)生copy操作的是,refrence count會自動+1蔗衡,比如我們剛剛將一個對象賦給另一個對象纤虽,這時內存空間中的refrence count的長度就是2,說明有兩個對象指向了這個內存空間绞惦;
當我們要釋放一個對象所占用的內存空間的時候逼纸,我們執(zhí)行release操作的是,內存空間中的refrence count就會自動-1济蝉,也就是將對象指向內存空間的這個指針delete了杰刽;
1、創(chuàng)建項目時王滤,默認的管理方式為ARC(自動)
怎么更改內存管理方式贺嫂?
點擊項目->built settings->all->搜索ARC->將yes改為no