Tôi đang cố gắng tìm cách vượt qua fout hoặc cout đến một hàm. Tôi nhận ra có những cách dễ dàng để xử lý vấn đề này, như đặt ifs trong bất kỳ hàm nào xuất dữ liệu hoặc thậm chí chỉ cần viết hàm theo cả hai cách. Tuy nhiên, điều đó có vẻ nguyên thủy và không hiệu quả. Tôi không tin rằng mã này sẽ hoạt động, tôi sẽ đặt nó ở đây để đảm bảo dễ dàng thấy được những gì tôi muốn "làm". Xin lưu ý rằng tôi đang tham gia một lớp thiết kế thuật toán bằng cách sử dụng C++, tôi không phải là một lập trình viên C++ dày dạn kinh nghiệm. Lớp học của tôi bị giới hạn sử dụng các tiêu đề bạn thấy.Có thể vượt qua cout hoặc fout đến một chức năng không?
#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;
}
Nó hoạt động! Tôi biết nó không thể khó khăn như tôi đã làm cho nó. Cảm ơn nhiều! – ChiefTwoPencils
Không sao cả. Xem http://en.cppreference.com/w/cpp/io/basic_ostream cho lớp cơ sở. –
@Kevin Sau khi đọc liên kết bạn đã cung cấp, tôi nghĩ rằng hàm sẽ trả về 'luồng' được đưa ra làm đối số ...' std :: ostream & sayHello (std :: ostream & stream) {dòng trả về << "Hello World";} ' – GingerPlusPlus