[問題]include共用函式庫

看板C_and_CPP (C/C++)作者 (yoyo)時間16年前 (2009/11/29 16:37), 編輯推噓2(206)
留言8則, 4人參與, 最新討論串1/1
遇到的問題: (題意請描述清楚) 有兩個基本的函式庫 funda1.h 跟 funda2.h 因為是其他的計算都會用到的 所以獨立出來 又因為性質有些不一樣 所以想說分開會比較明瞭 另有一個主程式 run.cpp 跟另一個函式庫 cal1.h 因為 cal1.h 會因為目的不同可能會改 所以把她抽出來 想說這樣之後可以直接替換掉就好 現在情況是因為cal1.h和run.cpp都會include兩個基本函式庫 而run.cpp又必須要去include cal1.h 所以會重複定義到基本函式庫內的function 希望得到的正確結果: 要怎樣作安排 (在哪個檔案裡include基本函式庫...之類的方法) 可以編譯執行檔成功 程式跑出來的錯誤結果: multiple definition of `ooxx....' 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) icc in Linux 補充說明: 小弟的C++完全是自學 所以可能一些基本觀念不大有 如果問題太簡單還請版上的高手們包含 囧rz~~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 133.1.27.176 ※ 編輯: aroy 來自: 133.1.27.176 (11/29 16:39)


11/29 22:30, , 2F
11/29 22:30, 2F

11/29 23:08, , 3F
.h 是 header file 不是 library,裡面只能放宣告不能放定
11/29 23:08, 3F

11/29 23:09, , 4F
義,重複 include header 應該只會讓編譯速度變慢,而不是
11/29 23:09, 4F

11/29 23:09, , 5F
出現 multiple definition,這顯然是 header file 亂寫。
11/29 23:09, 5F

11/29 23:11, , 6F
因為 C/C++ 都允許「宣告」重複出現,但定義不行。
11/29 23:11, 6F

11/30 11:50, , 7F
ㄟ..樓上的前輩太強了!! 受小弟一拜 <(_._)>
11/30 11:50, 7F

11/30 11:51, , 8F
也感謝各位熱心回覆的前輩 ^^
11/30 11:51, 8F
文章代碼(AID): #1B4ZAkAp (C_and_CPP)
文章代碼(AID): #1B4ZAkAp (C_and_CPP)