Objective C中的弱引用

2022-09-20 01:18:13 字數 587 閱讀 9736

@inte***ce classa:nsobject

@porperty (nonatomic,weak) classa * tempclass1;

@property (nonatomic,strong) classa * tempclass2;

-(void)test;

@end

@implement classa

-(void)test

self.tempclass1 = [classa new];    //由於tempclass1是弱引用的 所以剛申請完之後 這個引用就斷開啦 self.tempclass1就成了nil

self.tempclass2 = self.tempclass1;   //

self.tempclass2 = [classa new];     //這樣是可以的 tempclass3是強引用 可以正常申請一塊空間 

self.tempclass1 = self.tempclass2;  //這樣賦值後tempclass1也有了目標,但是如果self.tempclass2=nil的話 那麼那塊空間還是會不見 所以這時候tempclass1仍舊是nil

@end

C 中的弱引用

了解弱引用之前,先了解一下什麼是強引用 例如 object obj new object 就是乙個強引用,記憶體分配乙份空間給用以儲存object資料,這塊記憶體有乙個首位址,也就是obj所儲存的資料,記憶體分配的空間中不僅僅儲存著object物件資訊,還儲存著自己 object本身 被引用的次數。...

C 中的弱引用

了解弱引用之前,先了解一下什麼是強引用 例如 object obj new object 就是乙個強引用,記憶體分配乙份空間給用以儲存object資料,這塊記憶體有乙個首位址,也就是obj所儲存的資料,記憶體分配的空間中不僅僅儲存著object物件資訊,還儲存著自己 object本身 被引用的次數。...

WeakHashMap 中的弱引用

相信很多人對weakhashmap並沒有完全理解。weakhashmap 持有的弱引用的 key。1.弱引用的概念 弱引用是用來描述非必需物件的,被弱引用關聯的物件只能生存到下一次垃圾收集發生之前,當垃圾收集器工作時,無論當前記憶體是否足夠,都會 掉只被弱引用關聯的物件。2.weakhashmap中...