我可以初始化QFile并在第二次分配值吗?我试过这种方式
...
QFile file;
...
if (i == 0) file = QFile("foo.txt");
else file = QFile("bar.txt");
...
但是Qt Creator提出了这个错误:“'QFile& QFile :: operator =(const QFile&)'在这个内容中是私有的”
你能帮助我吗?
答案 0 :(得分:8)
QFile
是QObject
,这些是不可复制且不可分配的。您正在寻找的是setFileName
方法:
QFile file;
...
file.setFileName(i == 0 ? "foo.txt" : "bar.txt");
...
你也可以
QFile file(i == 0 ? "foo.txt" : "bar.txt");