Prüfen Sie, ob das ostream-Objekt cout oder ofstream ist, c ++

Gibt es in C ++ eine Möglichkeit zu prüfen, ob einostream Objekt istcout oder einofstream Objekt

Etwas wie

ostream& output(ostream& out)
{
    if (out == cout)
        return out;
    else
    {
        out << "something different because its not going to the console" << endl;
        return out;
    }
}

Der Grund, warum ich das tun möchte, ist, dass ich das @ überladen möch<< Operator, um zwei verschiedene Dinge zu tun, abhängig von der Art des Streams, mit dem er verwendet wird.

Ist es möglich das @ nur zu überlast<< Operator zweimal jedes Mal mit einer anderen Art von Stream?

Updated, um die Absicht besser widerzuspiegeln.

Antworten auf die Frage(8)

Ihre Antwort auf die Frage