BDS2006 kennt STL nicht



  • Hallo alle zusammen,

    ich weiß nicht was die Borland Entwickler sich gedacht haben, aber mein BDS2006 kennt keine #include <algorithm.h>, kennt nur #include <algorithm>.
    Wehre nicht das Problem wenn der die Funktion random_shuffle() aus C++ STL erkennen würde, was der BCB6 problemlos macht.
    Kann mir jemand ein Tip geben was muss ich noch includieren, damit das BDS die Funktion erkennt.
    BDS ist echt ein Problem! Ich finde den lange nicht so gut wie BCB6.

    Auf jede sachliche Antwort würde mich sehr freuen!



  • Hallo

    Der neue Borland-Compiler ist eben einfacher Standard-konformer als der alte.
    - Die Header des C++ Standards werden alle ohne .h included
    - Alle Funktionen und Klassen in den Includes liegen in Namespace std.

    Du must dort wo du solche STL-Symbole benutzt entweder jedesmal den Namespace std dav orschreiben oder einmalig pro Quellcodedatei (nicht in Headerdatei!)

    using namespace std;
    

    Dieses Vorgehen solltest du dir unbedingt angewöhnen, um ordentlichen C++ Code zu schrieben. Evenmtuell nützt auch ein Durcharbeiten eines C++ Turorials, damit du niht wieder was aus dem Standard auslässt.

    bis bald
    akari



  • aesse schrieb:

    ich weiß nicht was die Borland Entwickler sich gedacht haben, aber mein BDS2006 kennt keine #include <algorithm.h>, kennt nur #include <algorithm>.

    Nur Letzteres ist Standard.

    Apropos Standard, wie wäre es mit

    using namespace std;
    

    oder eben

    std::random_shuffle(x,y);
    

    Man merke: immer erstmal die eigenen Kenntnisse in Frage stellen, bevor du anderen die Schuld in die Schuhe schieben willst.

    /edit: nich schon wieder! 😉



  • Danke für die Hilfe!


Anmelden zum Antworten