c++中標頭檔案反覆包含,為了減少編譯時間,盡可能的減少標頭檔案中的內容是我們一貫方法!
(1)防止標頭檔案反覆編譯
#ifndef ggjbarline3dentity_h
#define ggjbarline3dentity_h
#endif //ggjbarline3dentity_h
這種定義巨集的形式,防止標頭檔案編譯是經常用的方法
注意:定義的巨集一定要唯一
(2)如果沒有定義具體的類物件,用類的宣告而不是包含
class ggjbarlineaddinfo;
(3)列舉的宣告,在相應的cpp檔案裡面再定義
enum enggjextenddirection;
(當然,這個時候要保證你的列舉只有你乙個在用,如果是有兩個檔案在用,為了防止重複定義應該相應地防止標頭檔案中,或提取處理放在公共型別部分)
(4)命名空間的宣告
namespace ggp
上面等價於
class ggp::cbody;
class ggp::cpolygon;
class ggp::ccurve2d;
不應該用using namespace ggp;這種形式,這種形式會使標頭檔案瞬間膨脹,把ggp裡面的東西都放在了標頭檔案中。
(5)預處理標頭檔案
#include "stdafx.h"
如果你的工程是帶預處理標頭檔案的,那麼把自己工程裡面常用的標頭檔案,其他工程常用的標頭檔案一併放在裡面。
(6)#include "stdafx.h"
預處理標頭檔案中放類宣告,這個方法應該是可以的,還沒用過,應沒看見別人用過,應該和在標頭檔案裡面宣告差不多吧!?
2 9編寫自己的標頭檔案
1.預編譯標頭檔案 1 新增乙個stdafx.h檔案 名字隨便取,這裡用了vs預設提供的名稱 在這個.h檔案裡include要使用的標頭檔案 一般是外部的庫,自己寫的不常變的標頭檔案也可以加進來 2 新增乙個stdafx.cpp檔案,並include stdafx.h 3 專案屬性 c c prec...
C 建立自己的標頭檔案
1 編寫.h標頭檔案 首先為了防止重複編譯,一般在標頭檔案中加入 ifndef define endif 這樣的語句。其中 ifndef 是指 if not define 而 是自定義的名字,一般是.件名的大寫形式。然後在上面語句的中間一般寫類的宣告 包括類裡面的成員和方法的宣告 函式原型 defi...
如何編寫自己的標頭檔案
不多說直接進入主題 想要使用自己的標頭檔案,就需要自己建立乙個專案,在自己的 專案 裡面才能使用自己的標頭檔案 我是新手,說錯還望大佬指正 如何建立專案 建立完專案後就可以編寫自己的函式和標頭檔案了 1.建立主函式main 在專案位置右鍵新建即可,並重命名main 寫自己的標頭檔案,lyq.h ly...