我正在寫一個簡單的類,並得到一些錯誤。頭文件如下所示:傳遞字符串通過引用錯誤C++
和下面的方法文件顯示:
// temp.cpp
#include "temp.h"
#include <string>
using namespace std;
GameEntry::GameEntry(const string &n, int s):name(n),score(s) {}
string GameEntry::getName() { return name; }
int GameEntry::getScore() { return score; }
主要文件如下所示:
#include <iostream>
#include <string>
#include "temp.h"
using namespace std;
int main() {
string str1 = "Kenny";
int k = 10;
GameEntry G1(str1,k);
return 0;
}
我有錯誤是這樣的:
Undefined symbols for architecture x86_64:
"GameEntry::GameEntry(std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > const&, int)", referenced from:
_main in main1-272965.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Can anyon告訴我什麼是錯的?非常感謝。
你是如何調用編譯器和鏈接器的?似乎你忘了與'temp.o'鏈接。 – 5gon12eder 2015-01-09 22:25:44
你是如何編譯的?什麼是命令行? – joelmeans 2015-01-09 22:26:11
我只是簡單地嘗試「C++ main.cpp」,它通常適用於我。 – Kenny 2015-01-09 22:29:51