[問題] 有關標頭檔和實作內容分開

看板C_and_CPP (C/C++)作者 (little white)時間15年前 (2011/02/09 12:38), 編輯推噓1(1017)
留言18則, 4人參與, 最新討論串1/1
看著書上跟著寫兩個小程式 這個是.h檔 #include <string> using std::string; class GradeBook { public: GradeBook(string); void setCourseName(string); string getCourseName(); void displayMessage(); private: string courseName; }; 這個是實作的檔案 #include <iostream> #include "GradeBook.h" using std::cout; using std::endl; GradeBook::GradeBook(string name) { setCourseName(name); } void GradeBook::setCourseName(string name) { courseName = name; } string GradeBook::getCourseName() { return courseName; } void GradeBook::displayMessage() { cout << "Welcome to the gradebook for\n" <<getCourseName() << " !! " << endl; } 可當我compile的時候他出現 undefined reference to `WinMain@16' 我有把.h跟c++檔放在同一個目錄 但是他好像沒有找到的感覺 我用的是code blocks 煩請各位前輩指正一下 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.62.188.234

02/09 12:39, , 1F
int main()
02/09 12:39, 1F

02/09 12:40, , 2F
記得開同一個專案, header 不要用using, 使用 header
02/09 12:40, 2F

02/09 12:41, , 3F
guard, 物件不要用 pass by value
02/09 12:41, 3F

02/09 13:01, , 4F
聽不太懂QQ 能請大大詳細解釋嗎?
02/09 13:01, 4F

02/09 13:15, , 5F
你的問題出在沒寫 main 所以當然編不出執行檔
02/09 13:15, 5F

02/09 13:15, , 6F
一樓說的是你的header有一些新手常見錯誤 建議先看書
02/09 13:15, 6F

02/09 13:26, , 7F
02/09 13:26, 7F

02/09 13:29, , 8F
我還有第三個檔案有main沒貼出來抱歉...
02/09 13:29, 8F

02/09 13:30, , 9F
感謝love大!!
02/09 13:30, 9F

02/09 13:34, , 10F
love大的Code我的也不能跑耶QQ
02/09 13:34, 10F

02/09 13:35, , 11F
undefined reference to `GradeBook::GradeBook(std::s
02/09 13:35, 11F

02/09 13:35, , 12F
tring const&)
02/09 13:35, 12F

02/09 13:37, , 13F
開 GradeBook.cbp 去建... 多個檔案一起建要用專案
02/09 13:37, 13F

02/09 13:42, , 14F
恩恩!!!!再次感謝>/////<
02/09 13:42, 14F

02/09 19:27, , 15F
你開一個PROJECT 然後把所有檔案丟進去 然後在專案名稱按
02/09 19:27, 15F

02/09 19:28, , 16F
右鍵->ADD file把你所有檔案加進去 他就會自動幫你分.c .h
02/09 19:28, 16F

02/09 19:28, , 17F
然後把主程式設成main.c
02/09 19:28, 17F

02/09 19:45, , 18F
感謝各位前輩的指導!!
02/09 19:45, 18F
文章代碼(AID): #1DKXe-oA (C_and_CPP)
文章代碼(AID): #1DKXe-oA (C_and_CPP)