sprintf für string



  • pumuckl schrieb:

    Doch. vc7 schluckts, und ich wüsste auch nicht was daran böse sein soll.

    Und ich wollte noch an den Beitrag etwas anfügen wie "Achtung: Ich hätte diese Anmerkung nicht gemacht wenn ich nicht wüsste dass dort ein Problem liegt". Hätte ich mal 🙂

    Sebastian Pizer schrieb:

    Die Sache hat leider einen kleinen Haken. Benutzerdefinierte Typen funktionieren hier nicht als erstes Argument, da solche freien operator<<-Funktion den Stream als Referenz annehmen und std::stringstream() aber ein temporäres Objekt ist.

    Richtig, darauf wollte ich hinaus.

    Genauergesagt funktionieren alle freien operator<<(basic_ostream&, ...) hier nicht, sondern nur die in basic_ostream enthaltenen.

    Das Beispiel funktioniert also nur (im Sinne von übersetzt und tut was wir erwarten) für skalare Typen und void*, wobei alle anderen Zeiger (auch der C-String) zu void* zerfallen.


Anmelden zum Antworten