c++ - 使用 auto 初始化 QFile

标签 c++ qt

我正在采用使用自动类型推导的现代风格,但我不明白为什么会这样:

auto file = QFile{filepath};

出现以下错误:

error C2280: 'QFile::QFile(const QFile &)': attempting to reference a deleted function

最佳答案

您编写代码的方式调用了 QFile constructor ,然后是它的复制构造函数。最后一个未在 QFile 类中定义,因此编译器错误消息告知此函数已被删除。

因此,您不能在这里真正使用 auto。但是您仍然可以像这样初始化您的 QFile 实例:

QFile file{filepath};
// or
QFile file = {filepath};

关于c++ - 使用 auto 初始化 QFile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57212898/

相关文章:

c++ - 将赋值从新构造的对象移动到成员函数中的 *this

具有特征的 C++ 类型删除

multithreading - 在多个 qt 线程中使用单个 QSqlDatabase 连接

Qt/OpenGL - 在 3D 场景上绘制 2D "scale line"

javascript - PyQt 中的评估JavaScript - 未调用函数

c++ - Qt 在第一个窗口关闭时打开另一个窗口

python - 两个并发的 Python 进程可以在 Boost Python 中运行吗?

c++ - 用于生产服务器的 Wt httpd

c++ - 如何实现QProgressDialog?

c++ - 无法将参数的 'double (*)[10]' 转换为 'double*'