qt添加第三方库
有两种方式:
第一种,右键项目名称–添加库–外部库
第二种,在**.pro文件中添加库的头文件和库的动态编译选项
INCLUDEPATH += 头文件路径 // 头文件路径
LIBS+=-L库路径 -lcurses
qt类中访问全局变量
qt用系统类时定义的全局变量可能会跟类中的变量冲突,造成编译错误等,
C:\Users\CUI\Documents\untitled\mainwindow.cpp:22: error: invalid use of member 'int QWidget::x() const' (did you forget the '&' ?)
..\untitled\mainwindow.cpp:22:8: error: invalid use of member 'int QWidget::x() const' (did you forget the '&' ?)
if(x == 5)
^
这里是定义了一个全局变量x,在类内访问时报错,
解决方式是前面加::,意思是访问外部变量,这样就不会报错了。
void MainWindow::on_pushButton_clicked()
{
if(::x == 5)
{
qDebug()<<"haha";
}
}
qt中qDebug()编译报错
缺少头文件
#include <QDebug>
qt中qDebug()打印"",即使有内容,也打不出来
QFile file(path);
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
{
msg+="open file failed";
return false;
}
else {
array =file.readAll();
file.close();
}
qDebug()<<array;
此时qDebug()很可能什么也打印不出来,因为qDebug()打印遇到\0便会停止打印,qbytearray是字符数组,只要文档中有空格就会识别成\0,造成打印停止。
可以用qDebug()<<QString(array),即可显示内容。