问题描述
有两个类,Camera继承Scanner。 我想在父类中写一些虚函数, 并在子类中实现。 但是我遇到了一些问题。
扫描仪.h
class Scanner : public QObject
{
public:
explicit Scanner(QObject *parent = nullptr);
~Scanner();
virtual bool Connect() =0;
};
扫描仪.cpp
#include "scanner.h"
Scanner::Scanner(QObject *parent) : QObject(parent)
{
}
Scanner::~Scanner()
{
}
相机.h
#include "scanner.h"
class Camera : public Scanner
{
public:
explicit Camera();
~Camera();
bool Connect();
};
camera.cpp
#include "camera.h"
Camera::Camera()
{
}
Camera::~Camera()
{
}
bool Camera::Connect()
{
return true;
}
构建后,我收到了这些错误消息。
CMakeFiles/scanner_test.dir/src/camera.cpp.o: In function `Camera::Camera()':
camera.cpp:(.text+0x19): undefined reference to `Scanner::Scanner(QObject*)'
CMakeFiles/scanner_test.dir/src/camera.cpp.o: In function `Camera::~Camera()':
camera.cpp:(.text+0x58): undefined reference to `Scanner::~Scanner()'
CMakeFiles/scanner_test.dir/src/camera.cpp.o:(.data.rel.ro._ZTI12Camera[_ZTI12Camera]+0x10): undefined reference to `typeinfo for Scanner'
collect2: error: ld returned 1 exit status
make[2]: *** [scanner_test] Error 1
make[1]: *** [CMakeFiles/scanner_test.dir/all] Error 2
make: *** [all] Error 2
我试图修复它但没用。 有谁知道是什么问题?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)