C++ Builder XE5, Benötige dringend Hilfe



  • Hast Du das alte Projekt konvertiert?

    Wenn ja dann versuche mal ein neues Projekt anzulegen und dort Deine Dateien hinzuzufügen.



  • Nein, ich habe nicht das alte Projekt genommen. Ich habe das komplette Memory-Spiel neu programmiert, weil ich diesmal ein größeres Spielfeld genommen habe und auch größere Bildkarten. Ich könnte echt verzweifeln. Ich dachte, ich schaffe es bis Donnerstag, hat ja auch super am Wochenende geklappt, mich hinzusetzen, aber diese Fehlermeldung raubt mir den Verstand. Ich hab mich schon tod gegoogelt, aber komme zu keiner Lösung



  • Ich habe gesehen, dass du eine memory.cpp hast. Du hast nicht zufälligerweise auch eine memory.h , die sich mit der memory.h aus der C-Runtime beißt?



  • Ja, ich habe eine memory.cpp...das ist richtig...auch demzufolge eine memory.h, das macht das Programm dann automatisch. Vielleicht wäre es eine Option, wenn ich den Dateinamen ändere....sobald ich nachher wieder am Rechner bin, werde ich das mal ausprobieren.
    Also meinst Du, ich sollte die memory.cpp auch unter einem anderen Dateinamen abspeichern und es dann nochmal versuchen?

    Danke, dass ihr mir helfen wollt. Ich bin mit meinem Latein nämlich tatsächlich mal am Ende.



  • Man kann solche Algorithmen im Notfall auch selbst programmieren. In etwa so (keine Zeit es hübsch zu machen, die Benutzung von rand ist so nicht wirklich toll):

    template<typename Iter>
    void random_shuffle(Iter begin, Iter end) {
      for (Iter shuffled = begin; shuffled != end; ++shuffled) {
        int pick = rand() % (end - shuffled);
        swap(*shuffled, *(shuffled + pick));
      }
    }
    

    (benötigt Random-Access-Iteratoren)



  • Ja,die Idee, das selbst zu programmieren hatte ich auch schon. Ich wusste nur nicht genau, wie ich es anstellen soll. Ich sehe aber schon, dass Du ganz anders programmierst 🙂 ich glaube, ich habe das etwas anders gelernt, so dass ich gerade Probleme beim Lesen Deines Codes habe. Aber ich versuche jetzt mal etwas. Wahrscheinlich ist die Lösung wieder viel zu einfach, als dass ich darauf komme.


  • Mod

    Hallo

    hast du die Dateien schon einen neuen
    Namen gegeben ?

    Mfg
    Klaus



  • Ich versuche gerade, den algorithm selbst zu programmieren... mir ist aufgefallen, dass dieser Compiler, auch, wenn ich z. B. die Anwendung hauptformular.cpp nenne und das Projekt memory, er automatisch noch eine Headerdatei anlegt, die dem Grunde nach ohne Quelltext dann da steht. Oh mann.....wenn ich das mit dem Alorithmen jetzt nicht hinbekomme, versuche ich die Dateien umzubenennen.



  • Also jetzt bin ich total verwirrt.... an Klaus: ich habe eine h-datei aus dem projekt entfernt, weil mir das komisch vorkam und habe das komplette Projekt nochmal compiliert, ohne es auszuführen. Da kam schonmal keine Fehlermeldung und war ein Juhuu-Erlebnis. random_shuffle (Feld, Feld+42) steht drin und im Header sogar die #include <algorithm>.

    Ich habe dann freudestrahlend das Programm ausgeführt und leider festgestellt, wenn ich die Karten aufdecke, weiterhin alle Paare nebeneinander liegen. Irgendetwas ist da nicht in Ordnung.....



  • Ich könnte gerade meinen imac samt Tastatur aus dem Fenster werfen. Ich weiß nicht, was ich jetzt verbockt habe, aber das Spielfeld ist weg.

    Ich werde mich dransetzen und ganz von vorne beginnen. Ganz von vorne....und ein neues Projekt anlegen. Dann bin ich mal gespannt...


Anmelden zum Antworten