C ++为什么我不能在课堂上调用一个函数

时间:2014-10-21 18:43:18

标签: c++ class

如何让这段代码生效?

的main.cpp

#include <iostream>
#include "TestClass.h"

using namespace std;

int main()
{
TestClass testclass;
int number = testclass.AddNumbers(3, 5);

cout << number << endl;
return 0;
}

TestClass.h

#ifndef TESTCLASS_H
#define TESTCLASS_H 


class TestClass
{
    public:
        TestClass();
        int AddNumbers(int num1, int num2);
    protected:
    private:
};

#endif // TESTCLASS_H

TestClass.cpp

#include "TestClass.h"

TestClass::TestClass(){

}

int TestClass::AddNumbers(int num1, int num2){
    return num1 + num2;
}

我得到的唯一错误是“对TestClass :: TestClass()的未定义引用 和“对TestClass :: AddNumbers(int,int)的未定义引用”。

1 个答案:

答案 0 :(得分:2)

当您编译两个.cpp文件时,您将获得两个&#34;目标文件&#34;。这些是包含已编译内容的中间文件。之后,您需要将它们链接到实际的可执行二进制文件。

查看Oblivous船长提供的链接并查看第二个答案。它更深入地解释了这一点。