OC語言day06-05ARC中對多個對象內(nèi)存管理

pragma mark ARC中對多個對象內(nèi)存管理

pragma mark 概念

/**
 
 ARC下的@property參數(shù)
 strong 用于OC對象 相當(dāng)于 MRC中的 retain
 weak   用于OC對象 相當(dāng)于 MRC中的 assgin
 assgin 用于基本數(shù)據(jù)類型, 跟MRC的assgin一樣
 
 */

pragma mark 代碼

#import <Foundation/Foundation.h>
#pragma mark 類
#import "Person.h"
#import "Dog.h"
#pragma mark main函數(shù)
int main(int argc, const char * argv[])
{
    
    Person *p = [[Person alloc]init];
    Dog *d = [[Dog alloc]init];
    
    p.dog = d;
    d.owner = p;
    
    
    d = nil;
    
    NSLog(@"-----");
    
    p = nil;
    
    
    return 0;
}

Person.h //人類
#import <Foundation/Foundation.h>

@class Dog;
@interface Person : NSObject


// MRC, A對象想擁有B對象, 需要 對B對象進(jìn)行一次retain
//      A對象不用B對象了, 需要 對B對象進(jìn)行一次release
//      property的時候 進(jìn)行retain, dealloc的時候 進(jìn)行release


// ARC, A對象想擁有B對象, 那么就需要用一個強指針 指向 B 對象
//      A對象 不用 B 對象了,  什么都不需要做, 編譯器會自動幫我們做

#warning 在ARC保存一個對象用strong, 相當(dāng)于MRC的retain
@property (strong,nonatomic) Dog *dog;
@end
Person.m
#import "Person.h"

@implementation Person

- (void)dealloc
{
    NSLog(@"%s",__func__);
}

@end

Dog.h //狗類
#import <Foundation/Foundation.h>

@class Person;
@interface Dog : NSObject

//@property (nonatomic,strong)Person *owner;
//@property (nonatomic,assign)Person *owner;
// 在ARC中 如果保存對象不要用assign, 用weak
// assgin是專門用于保存基本數(shù)據(jù)類型的,如果保存對象用weak
@property (nonatomic,weak)Person *owner;

@end
Dog.m
#import "Dog.h"

@implementation Dog


- (void)dealloc
{
    NSLog(@"%s",__func__);
}


@end

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末伺帘,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子蓄坏,更是在濱河造成了極大的恐慌企巢,老刑警劉巖枫慷,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異浪规,居然都是意外死亡或听,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進(jìn)店門笋婿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來誉裆,“玉大人,你說我怎么就攤上這事缸濒≌矣” “怎么了元镀?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長霎桅。 經(jīng)常有香客問我,道長讨永,這世上最難降的妖魔是什么滔驶? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮卿闹,結(jié)果婚禮上揭糕,老公的妹妹穿的比我還像新娘。我一直安慰自己锻霎,他們只是感情好著角,可當(dāng)我...
    茶點故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著旋恼,像睡著了一般吏口。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上冰更,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天产徊,我揣著相機與錄音,去河邊找鬼蜀细。 笑死舟铜,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的奠衔。 我是一名探鬼主播谆刨,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼归斤!你這毒婦竟也來了痊夭?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤官册,失蹤者是張志新(化名)和其女友劉穎生兆,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體膝宁,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡鸦难,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了员淫。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片合蔽。...
    茶點故事閱讀 38,599評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖介返,靈堂內(nèi)的尸體忽然破棺而出拴事,到底是詐尸還是另有隱情沃斤,我是刑警寧澤,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布刃宵,位于F島的核電站衡瓶,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏牲证。R本人自食惡果不足惜哮针,卻給世界環(huán)境...
    茶點故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望坦袍。 院中可真熱鬧十厢,春花似錦、人聲如沸捂齐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽奠宜。三九已至包颁,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間挎塌,已是汗流浹背徘六。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留榴都,地道東北人待锈。 一個月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像嘴高,于是被迫代替她去往敵國和親竿音。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,465評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 今天看到一篇不錯的文章關(guān)于OC內(nèi)存管理的,轉(zhuǎn)載一下與你共享概述我們知道在程序運行過程中要創(chuàng)建大量的對象拴驮,和其他高級...
    niceSYT閱讀 445評論 0 2
  • 學(xué)習(xí)目標(biāo) 1.【理解】對象在內(nèi)存中的存儲 2.【理解】nil和NULL 3.【了解】#pragma mark分組導(dǎo)...
    Hm丶閱讀 472評論 0 3
  • Swift 介紹 簡介 Swift 語言由蘋果公司在 2014 年推出春瞬,用來撰寫 OS X 和 iOS 應(yīng)用程序 ...
    大L君閱讀 3,194評論 3 25
  • 概述在iOS開發(fā)中UITableView可以說是使用最廣泛的控件,我們平時使用的軟件中到處都可以看到它的影子套啤,類似...
    liudhkk閱讀 9,003評論 3 38
  • 導(dǎo)讀 一宽气、為什么要進(jìn)行內(nèi)存管理 二、內(nèi)存管理機制 三潜沦、內(nèi)存管理原則 四萄涯、MRC手動內(nèi)存管理 五、ARC自動內(nèi)存管理...
    千山小畻閱讀 2,029評論 0 7