std::basic_ostream ableiten



  • hola leute

    wenn ich von std::basic_ostream<char> ableite, wird dann alles wie mit std::ios::binary behandelt ? oder wird da was von ostream veraendert ?
    und wie sieht das mit std::basic_istream<char> aus ?

    Meep Meep



  • Es gilt: "typedef basic_XXX<char> XXX;"



  • moagnus schrieb:

    Es gilt: "typedef basic_XXX<char> XXX;"

    zu welcher frage gehoert diese antwort ?


  • Administrator

    Wahrscheinlich ein wenig zu allen und zu dieser:

    Meep Meep schrieb:

    oder wird da was von ostream veraendert ?

    Ich selber begreife deine Fragen nicht so ganz. Es scheint als willst du eine Unterscheidung zwischen basic_ostream<char> und ostream machen, dabei ist das eine nur ein typedef des anderen und somit absolut gleich ...

    Grüssli



  • ok. scheinbar hab ich mich nicht recht gut ausgedrueckt.

    wenn ich z.b. eine datei mit einem std::ofstream oeffne, dann hab ich die moeglichkeit ihn mit dem zusaetzlichen parameter 'std::ios::binary' zu oeffnen

    meine frage ist nun ob das ein std-verhalten des std::basic_ostream<char> ist oder nur eine erweiterung des ofstreams.

    wenn ich von std::basic_ostream<char> ableite, wird dann alles wie mit std::ios::binary behandelt

    die gleiche frage stellt sich mir auch noch mit dem std::basic_istream<char>

    Meep Meep


  • Administrator

    Aha, dann ist die Antwort wohl: Weder noch!
    Das Verhalten wird schlussendlich nämlich vom streambuf definiert. Ein fstream reicht die Open-Flags nur zum entsprechenden filebuf weiter. Gleiches beim stringstream , welcher es einfach an den stringbuf weiterleitet.
    Es kommt also drauf an, was für ein Puffer du deinem basic_ostream<char> übergibst.

    Zumindest wenn ich das richtig in Erinnerung habe ^^

    Grüssli


Anmelden zum Antworten