[問題] 初學class, compile不會過
遇到的問題: (題意請描述清楚)
compile會出現錯誤訊息
希望得到的正確結果:
正常執行,印出key的id
程式跑出來的錯誤結果:
Compiling: main.cpp
Compiling: Key.cpp
Linking console executable: bin\Debug\SEproject.exe
obj\Debug\Key.o: In function `ZN3KeyC2Ev':
D:/test/SEproject/Key.cpp:18:ey()
obj\Debug\main.o:D:/test/SEproject/Key.cpp:18嚗梄洵銝胦活摮ꐊobj\Debug\Key.o: In function `ZN3KeyC1Ev':
D:/test/SEproject/Key.cpp:18:ey()
obj\Debug\main.o:D:/test/SEproject/Key.cpp:18嚗梄洵銝胦活摮ꐊobj\Debug\Key.o: In function `ZN3KeyC2Ei':
D:/test/SEproject/Key.cpp:23:ey(int)
obj\Debug\main.o:D:/test/SEproject/Key.cpp:23嚗梄洵銝胦活摮ꐊobj\Debug\Key.o: In function `ZN3KeyC1Ei':
D:/test/SEproject/Key.cpp:23:ey(int)
obj\Debug\main.o:D:/test/SEproject/Key.cpp:23嚗梄洵銝胦活摮ꐊobj\Debug\Key.o: In function `ZN3Key5getIdEv':
D:/test/SEproject/Key.cpp:28:etId()
obj\Debug\main.o:D:/test/SEproject/Key.cpp:28嚗梄洵銝胦活摮ꐊcollect2: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 1 seconds)
0 errors, 0 warnings
(奇怪的亂碼 = =a 我看不懂)
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
gcc/g++
有問題的code: (請善用置底文標色功能)
main.cpp
#include <iostream>
#include "Key.cpp"
using namespace std;
int main()
{
cout << "Hello world!" << endl;
Key k1;
Key k2(5);
cout<<k1.getId()<<" "<<k2.getId()<<endl;
return 0;
}
Key.cpp
#include <iostream>
using namespace std;
class Key{
public:
Key();
Key(int);
int getId();
protected:
private:
int id;
};
Key::Key()
{
id = 3;
}
Key::Key(int a)
{
id = a;
}
int Key::getId()
{
return id;
}
補充說明:
用C++這麼久,算是第一次要寫class
不過真的很不熟 出了點問題
麻煩大家了
--
我不是宅 我只是比較居家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 108.6.65.99
推
11/24 12:57, , 1F
11/24 12:57, 1F
推
11/24 13:00, , 2F
11/24 13:00, 2F
→
11/24 13:09, , 3F
11/24 13:09, 3F
→
11/24 13:10, , 4F
11/24 13:10, 4F
推
11/24 13:21, , 5F
11/24 13:21, 5F
→
11/24 13:48, , 6F
11/24 13:48, 6F
→
11/24 13:56, , 7F
11/24 13:56, 7F
→
11/24 14:00, , 8F
11/24 14:00, 8F
→
11/24 14:02, , 9F
11/24 14:02, 9F
我以前寫C比較多,雖然現在有在寫C++
但是很多事情我還是都用function解決
沒有自己寫過class
我是用 win7 + Code block + gcc
※ 編輯: rock1985 來自: 108.6.65.99 (11/24 14:21)
→
11/24 14:30, , 10F
11/24 14:30, 10F
推
11/24 14:43, , 11F
11/24 14:43, 11F