gpt4 book ai didi

c++ - 将函数打印到输出文件

转载 作者:搜寻专家 更新时间:2023-10-31 00:37:16 24 4
gpt4 key购买 nike

我即将完成我正在编写的程序,但遇到了障碍。我正在尝试打印由指针调用的名为 print 的函数的内容。

我的问题是我需要将函数的内容打印到输出文件,但不确定如何操作。

这是我的打印功能:

void English::Print(){

int formatlength = 38 - (static_cast<int>(firstName.size() + lastName.size()));

cout << firstName << " " << lastName;
cout << setw(formatlength) << finalExam;
cout << setprecision(2) << fixed << setw(11) << FinalGrade();
cout << setw(4) << Lettergrade() << endl;
}

这是打印函数的实现:

for (int i = 0; i <= numStudents - 1; i++) {
if (list[i]->GetSubject() == "English") {
list[i]->Print();
}
}

for 循环在我的学生列表中循环。

我的目标是 list[i]->Print() 将打印到我的输出文件。

最佳答案

只需替换 coutostream对象,类似于:

void English::Print(ostream& fout){
//ofstream of("myfile.txt", std::ios_base::app);
int formatlength = 38 - (static_cast<int>(firstName.size() + lastName.size()));

fout << firstName << " " << lastName;
fout << setw(formatlength) << finalExam;
fout << setprecision(2) << fixed << setw(11) << FinalGrade();
fout << setw(4) << Lettergrade() << endl;
}

此外,您可以重载 <<你类里的运算符(operator)也是English

friend ostream& operator <<( ostream& os, const English& E )
{
//
return os;
}

然后可以简单地使用:

fout << list[i] ;

关于c++ - 将函数打印到输出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20207560/

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