[問題] 兩個class 彼此之間關係的問題

看板C_and_CPP (C/C++)作者 (追夢)時間15年前 (2011/06/18 14:27), 編輯推噓1(109)
留言10則, 4人參與, 最新討論串1/1
在A.cpp 這支file裡面定義了Class A class A { .... }; 如果在class A外面寫了一行 class B; 和在class A裡面寫了一行 class B; 分別的用意是什麼呢? (class B實際定義寫在別的file裡頭) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.64.174.227

06/18 14:42, , 1F
forward declaration
06/18 14:42, 1F

06/18 14:42, , 2F
告訴他有這樣的一個class可是詳細內容再其他地方
06/18 14:42, 2F

06/18 14:43, , 3F
不然class a裡有class b,class b裡頭也有class a
06/18 14:43, 3F

06/18 14:43, , 4F
的時候會沒辦法編譯
06/18 14:43, 4F

06/18 15:02, , 5F
有#include .h就不用這樣吧!? 另外寫裡面外面有不同嗎
06/18 15:02, 5F

06/18 15:11, , 6F
你自己試試不做 forward declaration 就會明白用不用這
06/18 15:11, 6F

06/18 15:11, , 7F
樣與是否 include .h 無關了
06/18 15:11, 7F

06/18 16:26, , 8F
如果你沒有要用那個class的定義部分
06/18 16:26, 8F

06/18 16:27, , 9F
多餘的include只會增加編譯相依姓
06/18 16:27, 9F

06/18 16:27, , 10F
在開發大型專案就會知道痛苦了..
06/18 16:27, 10F
文章代碼(AID): #1D_4LUiD (C_and_CPP)
文章代碼(AID): #1D_4LUiD (C_and_CPP)