D:\C++QT\Table_Data_Scrolling\mainwindow.cpp:53: error: passing 'const QFile' as 'this' argument discards qualifiers [-fpermissive] QByteArray array = file.readLine(); 怎么解决 ^
时间: 2024-02-14 18:08:59 浏览: 144
index_jsp.txt(n)
5星 · 资源好评率100%
这个错误提示的意思是,你在尝试使用一个常量 QFile 对象调用了一个非常量成员函数 readLine()。因为该成员函数并没有被声明为 const,所以不能在常量对象上调用。
解决这个问题的方法是将 QFile 对象声明为非常量对象,或者使用 const 成员函数来代替 readLine()。如果你需要修改文件内容,则应该将 QFile 对象声明为非常量对象。如果你只需要读取文件内容,则可以使用 const 成员函数,例如:
```c++
QByteArray array = file.readAll(); // 使用 const 成员函数 readAll()
```
或者你可以在函数声明中加上 const 修饰符,例如:
```c++
QByteArray readLine() const; // 在函数声明中加上 const
```
这样就可以在常量 QFile 对象上调用 readLine() 了。
阅读全文