[問題] #include 重複定義

看板C_and_CPP (C/C++)作者 (nahgnimiast)時間16年前 (2009/02/12 22:27), 編輯推噓3(3010)
留言13則, 3人參與, 最新討論串1/3 (看更多)
我想問#include造成重複定義的問題 我的b是某個class的宣告 a是main所在, c則是某些GUID, a和b 各會用到c其中的某些GUID, 但是這樣 會發生重複定義的問題, 我搞不清楚 什麼情況下會發生重複定義, 有人可 以解說一下嗎? ==================b(class)========== #include "a.h" #include "c.h" ==================a(main)=========== #include "b.h" ==================c================= -- 另外請教ptt有討論視窗程式的版嗎? 或是有什麼網路上的論壇? 最近需要自訂SMARTPHONE的設定頁, 不知 道哪裡有資料可看? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.168.69.138


02/12 22:30, , 2F
在c.h最前面加上 #ifndef _C_H #define _C_H #endif
02/12 22:30, 2F

02/12 22:34, , 3F
我的問題是我的a並沒有include c兩次, 位什麼還是會
02/12 22:34, 3F

02/12 22:35, , 4F
會出現重複宣告?
02/12 22:35, 4F

02/12 22:36, , 5F
出現的錯誤不是重複宣告, 好像是寫說xxx在yyy.obj內
02/12 22:36, 5F

02/12 22:36, , 6F
已經定義過了
02/12 22:36, 6F

02/12 22:39, , 7F
因為你include b.h 它裡面有寫include a.h阿 你說你a會用c
02/12 22:39, 7F

02/12 22:39, , 8F
這就一次了 而你下面include c.h又一次 就重複了
02/12 22:39, 8F

02/12 22:45, , 9F
你說的對, 我這樣寫的確會重複...
02/12 22:45, 9F

02/12 22:46, , 10F
我明天確認一下CODE, 今天看的CODE我一直覺的沒REDEF
02/12 22:46, 10F

02/12 22:47, , 11F
所以才會一直覺的很奇怪
02/12 22:47, 11F

02/12 22:48, , 12F
你說的這種造成redef的情況我有注意過
02/12 22:48, 12F

02/12 22:49, , 13F
明天確認一下是我眼花還是其他問題
02/12 22:49, 13F
文章代碼(AID): #19b37Hsb (C_and_CPP)
文章代碼(AID): #19b37Hsb (C_and_CPP)