[問題] header file重複定義

看板C_and_CPP (C/C++)作者 (涅斯)時間14年前 (2011/11/23 21:41), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) MS VS 2010 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 程式碼(Code):(請善用置底文網頁, 記得排版) http://pastie.org/2908804 問題: 我想請問一下,我寫了 5 個 header file 分別是 1. Company.h 2. Manager.h 3. Engineer.h 4. Seller.h 5. OfficeLady.h NO.2 ~ 5 因為繼承自 Company.h 內定義的 class CCompany 所以都會 include Company.h 而 main() 會 include NO.1 ~ 5 我把 Company.h 的開頭加上 #ifndef COMPANY_H #define COMPANY_H 結尾加上 #endif 可是在編譯的時候過不了,顯示 error LINK2005 及 error LINK2001 於是我把每一個 header file 都如 Company.h 一樣,使用了 #ifndef, #define, #endif 使用的分別是 MANAGER_H, ENGINEER_H, SELLER_H, OFFICELADY_H 不過仍然編譯不過,是漏了什麼嗎? 之前用 #pragma once 也過不了所以才改換這樣寫,不過一樣不行... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.33.61.196

11/23 21:51, , 1F
static member variable 的定義不可以放在 header
11/23 21:51, 1F

11/23 23:55, , 2F
原來是這樣...我測試了好久 Q_Q
11/23 23:55, 2F

11/23 23:55, , 3F
謝謝囉 :)
11/23 23:55, 3F

11/26 23:22, , 4F
挖咧。
11/26 23:22, 4F
文章代碼(AID): #1EpFVtpJ (C_and_CPP)
文章代碼(AID): #1EpFVtpJ (C_and_CPP)