ein stringstream in einen anderen kopieren



  • hi,
    wie kopiere ich am besten ein stringstream in einen anderen?



  • Hm, also so gehts auf jeden Fall:

    [cpp]
    stringstream str1; str << "Hallo Welt";
    stringstream str2( str1.str() ); //Möglichkeit 1
    stringstream str3; str3 << str1.str(); //Möglichkeit 2
    stringstream str4;
    copy( istream_iterator<string>(str1), istream_iterator<string>(), ostream_iterator<string>(str4) ); //Möglichkeit 4, aber evt. mit Syntaxfehler



  • Und was ist Möglichkeit 3 ;)?

    Zwei Varianten hätte ich noch:

    target<<source.rdbuf();
    source>>target.rdbuf();
    

    (die funktionieren sogar mit beliebigen IO-Streams)



  • Da hab ich mich doch glatt verzählt.

    Cool, deine Variante kannte ich gar nicht. Die ist natürlich besser, als einen temporären String mit str() zu erzeugen.


Log in to reply