開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
GCC
如題
node.h node.c
keyword : Include Guard <==查一下這個關鍵字另外別學壞用#pragma once, 這個M$ only 別用這個....剛查了一下 GCC跟clang居然支援了 真詭異
作者:
scwg ( )
2014-07-24 02:20:00queue.c includes queue.h, which includes node.h 怎麼會看不到 DATATYPE 呢? 除非有奇怪的 preprocessor directives不然 #include 只是單純的內文展開, 多重 include 會統統拉到最上層
#pragma once應該是各大編譯器都有支援了而且效率似乎比較好 所以也有人是建議使用
once沒進標準是因為"同個檔案"在某些平台難以定義inclusion guard若編譯器有作特別處理效率其實差不多
其實gcc -E出來應該結果都一樣...會有效能差嘛別告訴我gcc expand macros會多花幾個毫秒... XD
once可以連開檔都省略掉 檔案夠多會差一點點XD
作者:
scwg ( )
2014-07-25 03:59:00不管是 Eclipse 還是去 command line 用 gcc, 出錯想找問題一定得看錯誤訊息. 真的是DATATYPE的問題嗎? 還是哪裡少分號?