@class的作用:僅僅告訴編譯器,某個名稱是乙個類
@class person;//僅僅告訴編譯器,person是乙個類
在開發中引用乙個類的規範
1> 在 .h檔案中用@class來宣告類
2> 在 .m檔案中用#import來包含類的所有東西
和#import的區別
* #import方式會包含被引用類的所有資訊,包括被引用類的變數和方法:@class方式只是告訴編譯器在a.h檔案中b *h只是類的宣告,具體這和類裡面有什麼資訊,這裡不需要知道,等實現檔案中真正要用到時,才會真正去檢視b類中資訊
* 如果有上百個頭檔案都#import了同乙個檔案,或者這些檔案依次被#import那麼一旦最開始的標頭檔案稍有改動,後面引用到這個檔案的所有類都需要重新編譯一遍,這樣的效率也是可想而知的,而相對來講,使用@class方式就不會出現這種問題了
* 在 .m實現檔案中,如果需要引用到被引用類的實體變數或者方法時,還需要使用#import方式引入被引用類
兩端迴圈引用解決方案
1> 一端用retain
2> 一端用assign
黑馬程式設計師 Object C之迴圈引用
asp.net unity開發 net培訓 期待與您交流!關於迴圈引用的解決方法 兩端迴圈引用解決方案 1 一端用retain 2 一端用assign 首先定義兩個類 card person,其中card中又person的屬性,person中又card得屬性。1 card的宣告 class pers...
迴圈引用問題
main.m 07 迴圈引用 created by kevin on 13 8 9.1.class的作用 僅僅告訴編譯器,某個名稱是乙個類 class person 僅僅告訴編譯器,person是乙個類 2.開發中引用乙個類的規範 1 在.h檔案中用 class來宣告類 2 在.m檔案中用 impo...
迴圈引用問題
3 迴圈的retain 問題人有寵物 狗 狗有主人 人 那麼使用在使用兩個類時,再用 import相互匯入 就會有問題 需要使用 class 但是當兩個類都要引用對方的物件進入自己的類做屬性時,記憶體洩露的另一種情況。解決辦法 其中乙個先釋放 但是還有殭屍物件的問題 另乙個解決辦法是乙個用 reta...