Qt C ++向量的QFiles错误

时间:2013-11-12 17:40:21

标签: qt vector qfile qtcore

我有以下内容:

QString themePath(":/themes/");

std::vector<QString> resourcePaths;
resourcePaths.push_back(QString("html/details.html"));

std::vector<QFile> resources;
for (std::vector<QString>::iterator it = resourcePaths.begin(); it != resourcePaths.end(); ++it) {
    QString path = QString("%1%2/%3").arg(themePath, THEME, *it);
    QFile resource(path);
    resources.push_back(resource);
}

给我以下错误: error: 'QFile::QFile(const QFile&)' is private

如果我使用QList而不是std :: vector。

,我会得到同样的错误

感谢您的关注。

1 个答案:

答案 0 :(得分:1)

问题是,您在容器中使用QFile值,该容器使用作为QFile类的私有成员函数的复制构造函数隐式执行项目的复制。编译器告诉你。要解决这个问题,您可以尝试简单地存储QFile指针。