关于头文件
關于頭文件
例子:以下關于頭文件,說法正確的是()?
A:#include<filename.h>,編譯器尋找頭文件時,會從當前編譯的源文件所在的目錄去找
B:#include“filename.h”,編譯器尋找頭文件時,會從通過編譯選項指定的目錄去找
C:多個源文件同時用到的全局整數變量,它的聲明和定義都放在頭文件中,是好的編程習慣
D:在大型項目開發中,把所有自定義的數據類型、全局變量、函數聲明都放在一個頭文件中,各個源文件都只需要包含這個頭文件即可,省去了要寫很多#include語句的麻煩,是好的編程習慣。
正確答案: B ?
A中#include包括""和<>這兩種情況,""實在用戶工作目錄下尋找(用戶的工作目錄是通過編譯器指定的),<>是找系統標準庫函數,通過系統環境變量指定系統庫目錄;
C,頭文件中只能存放全局變量的聲明,定義要放在.cpp文件中,如果把定義放在.h文件中會出現error LNK2005: ?already defined in xxx.obj?
fatal error LNK1169: one or more multiply defined symbols found ?Error executing link.exe.這樣的鏈接錯誤;
D,這個作為一個程序員應該具備的常識,要把這些東西放在不同的.h文件中。
例子:以下關于頭文件,說法正確的是()?
A:#include<filename.h>,編譯器尋找頭文件時,會從當前編譯的源文件所在的目錄去找
B:#include“filename.h”,編譯器尋找頭文件時,會從通過編譯選項指定的目錄去找
C:多個源文件同時用到的全局整數變量,它的聲明和定義都放在頭文件中,是好的編程習慣
D:在大型項目開發中,把所有自定義的數據類型、全局變量、函數聲明都放在一個頭文件中,各個源文件都只需要包含這個頭文件即可,省去了要寫很多#include語句的麻煩,是好的編程習慣。
正確答案: B ?
A中#include包括""和<>這兩種情況,""實在用戶工作目錄下尋找(用戶的工作目錄是通過編譯器指定的),<>是找系統標準庫函數,通過系統環境變量指定系統庫目錄;
C,頭文件中只能存放全局變量的聲明,定義要放在.cpp文件中,如果把定義放在.h文件中會出現error LNK2005: ?already defined in xxx.obj?
fatal error LNK1169: one or more multiply defined symbols found ?Error executing link.exe.這樣的鏈接錯誤;
D,這個作為一個程序員應該具備的常識,要把這些東西放在不同的.h文件中。
總結
- 上一篇: C++中构造函数和析构函数可以抛出异常吗
- 下一篇: NULL、0、nullptr的区别?