[問題] class裡宣告另一個class

看板C_and_CPP作者 (fireslayer)時間14年前 (2011/08/19 12:18), 編輯推噓0(006)
留言6則, 5人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Visual c++ 2010 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) none 問題(Question): 無法編譯通過 錯誤結果(Wrong Output): cteacher.h(11): error C2143: 語法錯誤 : 遺漏 ';' (在 '*' 之前) cteacher.h(11): error C4430: 遺漏型別規範 - 假設為 int。注意: C++ 不支援 default-int cteacher.h(11): error C4430: 遺漏型別規範 - 假設為 int。注意: C++ 不支援 default-int cteacher.h(14): error C2061: 語法錯誤 : 識別項 'CStudent' 另外一個也一樣 程式碼(Code):(請善用置底文網頁, 記得排版) //CTeather.h #ifndef CTEACHER_H #define CTEACHER_H #include "CStudent.h" #include <string> using namespace std; class CTeacher { private: string name; bool* subject; CStudent** student; public: CTeacher(); CTeacher(string,bool*,CStudent**); }; #endif //CStudent.h #ifndef CSTUDENT_H #define CSTUDENT_H #include <string> #include "CTeacher.h" using namespace std; class CStudent { private: string name; bool* subject; CTeacher** teacher; public: CStudent(); CStudent(string,bool*,CTeacher**); }; #endif 補充說明(Supplement): 以前這樣做都沒有問題說@@ 函數實做的部分在CTeacher.cpp和CStudent.cpp裡 先謝謝版眾了=Д= -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.252.77

08/19 12:23, , 1F
在#include "CStudent.h"前加個 class CTeacher; 試試 ?
08/19 12:23, 1F

08/19 12:25, , 2F
哦哦過了 謝謝><
08/19 12:25, 2F

08/19 14:47, , 3F
看不出和標題有什麼關聯耶!@@
08/19 14:47, 3F

08/19 14:49, , 4F
1樓救了這篇
08/19 14:49, 4F

08/19 15:45, , 5F
類別交叉使用?怎麼不用繼承?用CPerson當師生的父類別。
08/19 15:45, 5F

08/19 16:34, , 6F
對齁 謝謝樓上大大的建議
08/19 16:34, 6F
文章代碼(AID): #1EJUGjYY (C_and_CPP)