继承类问题未定义引用

问题描述

有两个类,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 (将#修改为@)