0
A
回答
1
這是可能的,創建另一個頭,其中包括所有其他的包括,包括只有它:
COMMON.H:
#include <somefile.h>
#include <anotherFile.h>
#include <andAnotherOne.h>
在對方文件
,你只需要:
#include "common.h"
雖然我會認爲這是一個壞主意,因爲你公開的內容比你需要的每個類都多,並且違反了程序中模塊的分離。另外,預處理器需要更多的工作,也許還需要編譯器。
1
這是究竟如何:
#import <SomeFramework/SomeFramework.h>
工作。
會有開銷 - 可能有更多的文件要讀取,並且會有更多的文件需要解析。是否可接受的開銷是由您來決定的。可以開發ObjC程序,使其具有非常小的物理依賴性,並且使用#import
可以節省大量冗餘重新打開的標頭(可能多次包含標頭)。因此,如果正確完成,影響將非常小。
更大的問題可能是弄清楚如何避免將其他框架暴露給客戶端。從你的頭
#import <SomeFramework0/SomeFramework0.h>
#import <SomeFramework1/SomeFramework1.h>
#import <SomeFramework2/SomeFramework2.h>
#import <SomeFramework3/SomeFramework3.h>
#import <SomeFramework4/SomeFramework4.h>
#import <SomeFramework5/SomeFramework5.h>
200線從VS的lib的依賴200頭......
我經常這樣做,你的提議從依賴關係的變化隔離客戶端的東西。他們不希望每個班級都有個別的問題,並且認爲隨着時間的推移,他們只想使用圖書館/軟件包而不用麻煩。
相關問題
- 1. NaiveBayes分類器:我必須連接一個類的所有文件嗎?
- 2. 每個可執行文件都必須有一個ELF頭文件?
- 3. 我必須在哪裏保存一個新的頭文件?
- 4. 所有包含「#.h」的頭文件都必須與.cpp文件位於同一文件夾中嗎?
- 5. 表達式必須有一個類文件目錄C++
- 6. 我必須在類的頭文件中提到私有方法嗎?
- 7. 我是否必須爲類的所有私有方法聲明一個類別?
- 8. 下載文件必須在mac的錨點中有一個url
- 9. 一類的NSManagedObject「的NSManagedObject必須有一個有效NSEntityDescription
- 10. 必須將所有java類文件都歸屬於java包嗎?
- 11. JSONObject的問題一個JSONObject文本必須以'{'開頭
- 12. SVNSERVE - 所有存儲庫必須位於同一個父文件夾中嗎?
- 13. 一個ical文件必須有一個enddate嗎?
- 14. 錯誤:表達式必須有一個類的類型
- 15. 表達必須有一個類的類型
- 16. 如果每個框架都有頭文件,那麼它是否必須有一個二進制文件?
- 17. 帶有所有必要#include語句的單頭文件
- 18. uitextfield委託必須是文件的所有者?
- 19. 我必須爲log4j中的所有類創建appender嗎?
- 20. FileAttachment的必須有一個帳戶
- 21. 在一個給定軸的所有系列必須
- 22. 給定列中的所有行必須匹配,所有列
- 23. 如果只有一個斜槓開頭,模式必須成功
- 24. 在一個文件中或所用類的頭文件中定義所有常量是否好?
- 25. 在所有的jsps中添加一個jsp作爲頭文件
- 26. 有效的XML文檔必須有一個根標籤
- 27. 組件必須有一個有效的對等體 - BufferStrategy
- 28. 父項目必須有一個包裝類型的POM
- 29. entityName.state必須有一個定義的類型
- 30. DbArithmeticExpression參數必須有一個數字常見的類型
感謝您的回覆...真的有用 – Pinky 2012-02-16 08:36:49