THandleStream, operator ?? und AnsiString



  • (mit "operator ??" ist "operator<<" gemeint; im Thema kann man hier keine "<" eingeben.)

    Ich bekomme die Fehlermeldung:
    [C++ Fehler] CRechnung.cpp(258): E2094 'operator<<' ist im Typ 'THandleStream' für Argumente des Typs 'AnsiString' nicht implementiert

    obwohl ich den operator<< für THandleStream (bei TFileStream etc. dasselbe Spiel) und AnsiString durchaus in derselben Datei implementiere:

    THandleStream& operator << (THandleStream& os, AnsiString& arg)
    {
         os.Write(arg.c_str(),arg.Length());
         return os;
    };
    

    Die Probleme sind erst aufgetaucht, nachdem ich ostreams/istreams einsetze und für diese ebenfalls <<-operatoren eingeführt habe.

    Überhaupt habe ich mit dem Builder ständig Ärger, gerade auch mit den Standard-Streams (ohne std:: oder using namespace std geht z.T. nichts).

    Wie komme ich da weiter?



  • Hat sich erledigt.

    ZUERST #include <vcl.h>,
    DANN ERST #include <iostream>.

    Es sei denn man steht auf lustige Compilermeldungen. (Fehler reproduzierbar, es liegt wirklich daran. BCB6.)


Anmelden zum Antworten