閱讀940 返回首頁    go 阿裏雲 go 技術社區[雲棲]


C++編程規範之24:總是編寫內部#include保護符,絕不要編寫外部#include保護符

摘要:

    為頭文件添加保護:在所有頭文件中使用帶有唯一名稱的包含保護符(#include guard),防止無意的多次包含。

    在編寫程序的頭文件的時候,要注意每個頭文件都應該用內部包含保護符來進行保護,以避免在多次包含時重新定義。例如在下麵的例子中對於頭文件foo.h應該用包含保護符進行保護。

#ifndefFOO_H_INCLUDED_
#defineFOO_H_INCLUDED_
//....文件內容.....
#endif


這裏不得不說內部包含保護符和外部包含保護符了,內部包含保護符就是上麵代碼中的形式,當多次使用#include “foo.h”,foo.h中的內容也隻會使用一次。而外部包含保護符是另外一種形式,如下麵代碼所示:

#ifndefFOO_H_INCLUDED_
#include"foo.h"
#defineFOO_H_INCLUDED_
#endif


由於外部包含保護符經常可能會忘記寫,容易被誤用,因此不推薦使用。要盡量使用內部包含保護符。

在使用包含保護符的時候要遵循以下規則:

1.保護符使用唯一名稱。確保名稱至少在你的應用程序中是唯一的。

2.不要自作聰明。不要在受保護部分的前後防止代碼或者注釋,要謹遵上麵的標準形式。

最後更新:2017-04-03 12:53:49

  上一篇:go Windows 8.1都過去了,Windows 9還會遠嗎?
  下一篇:go svn插件安裝