我有以下代码,每次编译时,它都会给我一个错误,说明有一个未定义的引用ns :: player :: player()
以前从未发生过这种情况,所以说实话,我很困惑。我只知道这很简单。顺便说一句,下面的代码不是完全我正在使用的代码,但它是相同的想法。我只是缩短了它并更改了名称以便于阅读。
另外,如果我将它全部放入一个文件中,它会很好用。
的main.cpp
#include "space.hpp"
int main()
{
ns::player kyle;
return 0;
}
space.hpp
#ifndef SPACE_HPP_INCLUDED
#define SPACE_HPP_INCLUDED
namespace ns
{
class player
{
private:
int stat1, stat2, stat3;
public:
player();
player(int, int, int);
};
}
#endif
space.cpp
#include "space.hpp"
ns::player::player()
{
stat1 = 100;
stat2 = 200;
stat3 = 300;
}
ns::player::player(int a, int b, int c)
{
stat1 = a;
stat2 = b;
stat3 = c;
}