我正在尝试编译一个非常基本的C ++程序,但是有些错误。不管是什么,我相信这是非常明显的。我有三个非常短的文件。
main.cpp中:
#include <iostream>
#include "Player.h"
using namespace std;
int main()
{
Player rob;
cout << "Iran" << endl;
return 0;
}
Player.h
#ifndef PLAYER_H
#define PLAYER_H
class Player {
public:
Player();
private:
int score;
};
#endif
Player.cpp
#include "Player.h"
Player::Player(){
score = 0;
}
我用来编译的命令是g++ main.cpp -o main
我正在编译的错误是:
/tmp/ccexA7vk.o: In function `main':
main.cpp:(.text+0x10): undefined reference to `Player::Player()'
collect2: error: ld returned 1 exit status
注意:所有这些文件都在同一目录中。
答案 0 :(得分:7)
如评论中所述,您没有将Player.cpp提供给编译器。您应该将所有cpp文件提供给编译器。
g++ main.cpp Player.cpp -o main