gpt4 book ai didi

c++ - QFile 需要多个参数?

转载 作者:行者123 更新时间:2023-11-28 08:00:08 32 4
gpt4 key购买 nike

我有一个类(class):

Class MyClass
{
void myMember();
///code etc
private:
QFile fileMBox;
}

在类(class)成员中,我尝试使用:

void MyClass::myMember()
{
fileMBox ("myFile.txt");
}

我收到一条错误消息:“错误:C2064:术语不计算为采用 1 个参数的函数”,但文档说要使用:

QFile file("in.txt");

我做错了什么?

谢谢

最佳答案

您提出的文档是一个构造函数。它在实际创建对象时调用,而不是稍后调用。您的行为就像该对象是一个仿函数,在创建该对象后“调用”该对象。

要使用构造函数,您可以使用文件名初始化您的成员:

MyClass::MyClass() : fileMBox ("myFile.txt") {}

不过,没用过Qt,不知道能不能打开。如果确实打开了它,请改用以下内容:

MyClass::MyClass() {
fileMBox.setFileName ("myFile.txt");
}

现在你的函数只需要每次打开它,使用它,然后关闭它:

void MyClass::myMember() {
if (!fileMBox.open (QIODevice::ReadOnly | QIODevice::Text))
//handle error

//read file and do whatever

fileMBox.close();
}

关于c++ - QFile 需要多个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11698175/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com