我正在尝试找到一种将fout或cout传递给函数的方法。我意识到在逻辑上有简单的方法可以解决此问题,例如将ifs放在输出数据的任何函数中,甚至只是用两种方式编写函数。但是,这似乎是原始且低效的。我认为这段代码永远不会起作用,我将其放在此处以确保很容易看到我想要执行的操作。请注意,我正在使用c++进行算法设计类(class),但我绝不是经验丰富的c++程序员。我的类(class)仅限于使用您看到的 header 。
#include <iostream>
#include <iomanip>
#include <fstream>
using namespace std;
void helloWorld(char);
ofstream fout;
int main()
{
fout.open("coutfout.dat");
helloWorld(c);
helloWorld(f);
return 0;
}
void helloWorld(char x)
{
xout << "Hello World";
return;
}
最佳答案
这些都继承自ostream
,因此请尝试以下操作:
void sayHello(ostream& stream)
{
stream << "Hello World";
return;
}
然后在main中传入对象(cout或其他),它应该可以正常工作。
关于c++ - 是否可以将cout或fout传递给函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10356300/