首页 技术 正文
技术 2022年11月8日
0 收藏 327 点赞 1,835 浏览 1660 个字

1. 建立一个console工程

QT -= guiCONFIG += c++ console
CONFIG -= app_bundle# The following define makes your compiler emit warnings if you use
# any feature of Qt which as been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.SOURCES += \
main.cpp \
baseclass.cpp \
subclass.cpp# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += targetHEADERS += \
baseclass.h \
subclass.h

2. 添加baseClass

baseclass.h

#ifndef BASECLASS_H
#define BASECLASS_H#include "QObject"class baseClass: public QObject
{
Q_OBJECTpublic:
baseClass(QObject * p = );
virtual ~baseClass() {}signals:
void signal1();};#endif // BASECLASS_H

baseClass.cpp

#include "baseclass.h"baseClass::baseClass(QObject * p) : QObject(p)
{}

subclass.h

#ifndef SUBCLASS_H
#define SUBCLASS_H#include "baseclass.h"class subClass: public baseClass
{
Q_OBJECTpublic:
subClass(QObject * p = );
virtual ~subClass() {};//signals:
void signal2();};#endif // SUBCLASS_H

subclass.cpp

#include "subclass.h"subClass::subClass(QObject * p) : baseClass (p)
{}

main.cpp

#include <QCoreApplication>
#include "subclass.h"int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv); subClass * sub = new subClass(); return a.exec();
}

编译报错:

testQtSignalBug/subclass.cpp:: error: undefined reference to `vtable for subClass'collect2: error: ld returned  exit status

解决办法:注释掉subclass.h里的Q_OBJECT 宏

原因:未知

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,020
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,513
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,359
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,142
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,772
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,850