(); string get_offset(); string get_mapInfo(); char * get_data(); int get_isEncrypted();
保护: string uid; 字符串标签; 字符串偏移; 串 MAPINFO </跨度> ; char *数据……
我看到你没有在AtpReader.cpp中包含AtpReader.h,但是当你复制/粘贴时,你可能只是错过了它,把它插入到这里,因为如果你没有真正包含它,那么错误会有所不同。另外,我看到你在main.cpp中都包含了“atlasobject.h” 和“atp.h”,你真的不需要那个。
稍后编辑:您的问题在atp.h ...您的构造函数已声明但从未定义。这样做:ATP(){};
尝试使用 g++ 在linux终端 制作每个源代码的目标文件,然后链接目标文件并运行可执行文件
g++
g++ -c atp.cpp AtpReader.cpp AtlasObject.cpp g++ -o exe atp.o AtpReader.o AtlasObject.o ./exe
由于您正在获取链接器错误,并假设这是您的一些实际代码。由于我看不到任何函数内联,全局常量或变量在范围之外使用我认为问题位于AtpReader.cpp中,你是否遗漏了 #include AtpReader.h 那里?
#include AtpReader.h
只使用函数原型,编译器可以继续而不会出错,但链接器无法解析对地址的调用,因为没有保留功能代码或变量空间。在创建对链接器必须解析的函数的调用之前,您不会看到此错误。
AtpReader.cpp 未构建或其目标文件未链接到最终可执行文件。检查是否在构建目录中创建了AtpReader.obj / .o。
AtpReader.cpp