Проверьте, является ли объект ostream cout или ofstream, c ++
Есть ли способ в C ++, чтобы проверить, еслиostream
объектcout
илиofstream
объект?
Что-то вроде:
ostream& output(ostream& out)
{
if (out == cout)
return out;
else
{
out << "something different because its not going to the console" << endl;
return out;
}
}
Причина, по которой я хочу это сделать, заключается в том, что я хочу перегрузить<<
Оператор делает две разные вещи в зависимости от того, с каким типом потока он используется.
Можно ли просто перегрузить<<
оператор дважды каждый раз с другим типом потока?
Обновлен, чтобы лучше отражать намерения.