QT5 出现一些问题的解决 办法

版本:Qt Creator 5.4.0_mingw

QT编写串口助手

1、extra qualification 'Widget::' on member  ’ConvertHexChar‘ [-fpermissive]

 error: extra qualification 'Widget::' on member 'ConvertHexChar' [-fpermissive  char Widget::ConvertHexChar(char ch);

原因是: 在Widget 类的定义中把声明函数写成了   charWidget::ConvertHexChar(charch);
在类中应该写   
char  ConvertHexChar(charch);  所以在使用不同版本的编译器时,最好保证自己的代码在高版本的编译器下没有问题.


2、Cannot find file: E:\2016--\研究生课件\机电系统分析与设计\zuoye\QSerialPort_2_Hex_1\QSerialPort_1.pro.

15:19:22: 进程"C:\Qt\Qt5.4.0_mingw\5.4\mingw491_32\bin\qmake.exe"退出,退出代码 2 。

Error while building/deploying project QSerialPort_1 (kit: Desktop Qt 5.4.0 MinGW 32bit)

When executing step "qmake"

15:19:22: Elapsed time: 00:00.

原因是:Qt不支持中文的路径,把源码的路径全部改成英文即可解决问题。

QT Creator对大于带有两个空格的目录中文命名的目录不支持!!
究其原因 应该是qmake对带有空格的目录和中文命名的目录不支持!!


QT环境下利用OpenGL绘制三维图形 

3、error: 'class QApplication' has no member named 'setMainWidget'

错误:在类QApplication里面没有找到 setMainWidget 成员

原因:Qt 3.x支持setMainWidget,但是Qt4以后的高版本已经取消了对setMainWidget的支持


4、error: no matching function for call to 'widget::widget(int,int,bool&)'

错误:调用“widget :: widget(int,int,bool&)”没有匹配函数

原因:构造函数有带参数和不带参数两种类型。比如带参数的构造函数。实际用的时候却带了参数,这时候就无法匹配函数了


5、moc_widget.cpp:-1: error: undefined reference to 'Widget::mouseDoubleClickEvent(QMouseEvent*)'

moc_widget.cpp:-1:错误:未定义的引用“Widget :: mouseDoubleClickEvent(QMouseEvent *)”

collect2.exe:-1: error: error: ld returned 1 exit status

collect2.exe:-1:错误:错误:ld返回1退出状态

原因:头文件中定义了函数void mouseDoubleClickEvent(QMouseEvent*),源文件中并没有使用它。删除头文件的该函数就ok


6、error: undefined reference to `vtable for GLWidget'

原因是出现一个类的多继承问题,一个类可以有多个继承关系,但是中间出现了错误,参见qt creator创建类,然后自己再改写。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值