(三)#include與#import的區別、#import與@class 的區別

前言

剛做iOS的時候,有一天組長站在身后看我寫代碼,幽幽說了一句,你知道import之后<> 與""的區別嗎,答曰:mmp,不知道,沒看見趕功能么。卒

一、#include和#import的區別

include和import的作用一樣的,主要區別在于使用import可以直接避免重復引用,include需要手動處理重復引用。
什么是重復引用呢。classA引用了classC,classB引用了classC,Class引用了ClassA和ClassB,那么就會報錯了,親測報錯了哦。
那么上文提到的<>和""的區別呢。<>用于系統自帶頭文件的引用,""用于用戶自定義文件的引用。

二、@class

@class聲明一個類,它比較單純。@class后面跟著的僅僅是個類名,這個類如何實現定義的暫時不知道(畢竟比較單純)。如果需要知道類的實現定義還是需要import。看到之前說的@class可以防止死鎖,這個我沒太明白,我嘗試了classA import classB,classB import classA,并沒有報錯。這個帖子如果有大神看到的話,可否幫我解答(估計是沉了)

整理自浪蕩_notnil

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

推薦閱讀更多精彩內容