C++ c++;类包括未定义的引用
在大型程序中构造类的实例时遇到问题 在主要功能中,我有:C++ c++;类包括未定义的引用,c++,class,object,header,include,C++,Class,Object,Header,Include,在大型程序中构造类的实例时遇到问题 在主要功能中,我有: //main.cpp #include "MyClass.h" MyClass aMyClass; //do stuff with MyClass MyClass的标头此时只是一个构造函数,如下所示: //MyClass.h class MyClass { public: MyClass(); }; MyClass的源代码如下所示,此时也只是一个构造函数: //MyClass.cpp #include "M
//main.cpp
#include "MyClass.h"
MyClass aMyClass;
//do stuff with MyClass
MyClass的标头此时只是一个构造函数,如下所示:
//MyClass.h
class MyClass {
public:
MyClass();
};
MyClass的源代码如下所示,此时也只是一个构造函数:
//MyClass.cpp
#include "MyClass.h"
//--CONSTRUCTOR--//
MyClass::MyClass(){
cout << "constructing MyClass object..." << endl;
}
编辑:
我正在使用命令行使用以下命令编译程序:
g++ main.cpp -o mainProgram
编辑(已解决):
编译需要包括MyClass.cpp,正确的命令是:
g++ man.cpp MyClass.cpp -o mainProgram
虽然我确定这是个小东西,但我在哪里滑倒了?我曾尝试在程序的前面声明该对象,但这并没有解决问题,我得到了相同的错误
有人看到这里有问题吗 您还需要编译MyClass.cpp,这就是实现的地方
g++ main.cpp MyClass.cpp -o mainProgram
请显示您的编译命令行。在构建可执行文件时,您似乎没有链接
MyClass.cpp
。代码看起来不错,但看起来您没有链接到MyClass.cpp
。你是如何构建这个程序的?我已经更新了我的编译说明。请参见上面的编辑。请尝试g++main.cpp MyClass.cpp-o main程序
。从长远来看,您需要了解Makefiles或其他构建多个源文件程序的方法。#是否在主函数中包含“MyClass.h”
?因为那会引起问题
g++ main.cpp MyClass.cpp -o mainProgram