我有兩個可可觸摸類(objective-c)。並且兩個#import
彼此的頭。循環頭導入,枚舉無法識別
A類的頭文件定義了一個枚舉類,該類的B頭試圖使用。由於未識別類型,B類無法編譯。
我認爲這是一個循環依賴問題,但我認爲@class
不會有太大的幫助,因爲問題是與枚舉。
你有什麼建議?
我有兩個可可觸摸類(objective-c)。並且兩個#import
彼此的頭。循環頭導入,枚舉無法識別
A類的頭文件定義了一個枚舉類,該類的B頭試圖使用。由於未識別類型,B類無法編譯。
我認爲這是一個循環依賴問題,但我認爲@class
不會有太大的幫助,因爲問題是與枚舉。
你有什麼建議?
把枚舉放在它自己的頭文件中,並用@class在每個其他頭文件中聲明所需的類,所以A不需要導入B和B不需要導入A,但是會導入enum頭文件。
在頭文件中使用@class ClassName;
並在.m文件中使用導入。
仍然不會編譯;該類型在B類中仍然未被識別。 –
Class A標題在Class B標題中使用了什麼? – Daniel
現在,只是班級名稱。但是(除非我的設計證明不可行),它最終將使用它的屬性和方法。 但是,反過來不是真的,B類可以不使用除A類的枚舉類型之外的任何東西。也許我可以將枚舉移動到「Common.h」頭部。 –
是的,enum的「Common.h」聽起來像是一個很好的計劃。 – Daniel