C++ 编译简单可变文件类程序时出现未定义的引用错误

C++ 编译简单可变文件类程序时出现未定义的引用错误,c++,C++,这是我的主文件: #include<iostream> using namespace std; #include "practice.h" int main() { practice obj(2); obj.whatever(); } 我似乎无法理解这一点。每当我尝试组合时,它都会显示一个错误,表示未定义引用practice::practice(int),未定义引用practice::whatever(),ld返回到1退出状态,看起来您的cpp和头文件是向后

这是我的主文件:

#include<iostream>
using namespace std;

#include "practice.h"

int main()
{
    practice obj(2);
    obj.whatever();
} 

我似乎无法理解这一点。每当我尝试组合时,它都会显示一个错误,表示未定义引用
practice::practice(int)
,未定义引用
practice::whatever()
,ld返回到1退出状态

,看起来您的cpp和头文件是向后的。。。您应该创建类,并在标题中定义布局,然后在cpp文件中应该有详细信息。

@johand<代码>看起来还可以真的吗?@DimChtz:哇。。。我完全错过了cpp/h交换。。。关注坏链接。。。真丢脸。你是怎么编译代码的?哦。。。我错把它换成了问题。很抱歉没有找到解决方案是的,当我的水晶球说你忘了将第二个.cpp文件添加到项目中。我想他只是在问题中切换了它,因为他在“.h文件”中包含了标题是的,对不起,我的错误。
#include "practice.h"
#include<iostream>
using namespace std;

practice::practice(int num)
{
    h=num;
}
void practice::whatever()
{
    cout<<h;
}
class practice
{
public:
    practice(int);
    void whatever();

private:
    int h;
};