Rename: Vector->erase ?!?!



  • mit referenzen:

    void func(vector<int>& a) { }
    main() { vector<int> data; func(data); }
    

    mit zeiger:

    void func(vector<int>* a) { }
    main() { vector<int> data; func(&data); }
    


  • Okay, es funktioniert wirklich.

    VIEEELEN VIEEELEN DANK....

    Es ist schön das dann doch irgendwann alles funktioniert. Jetzt darf ich wieder langsam dahin arbeiten wo ich war : Von meinen 200 Zeilen code sind nämlich nur noch knapp 40 übrig 😞

    Aber ja vielen Dank nochmal. 🙂

    An Alle . Auch für den Link zu dem Tut.



  • Also, im Kontext von oben beschriebenem Programm.

    void func(vector<int> *cluster) {...
    
    cluster->erase(*cluster->at(k+1));...         // Hierum geht es
    }
    
    main() { vector<int> cluster; func(&cluster)...}
    

    Also obige Zeile sollte mir eigentlich das Element k+1 in Cluster löschen.
    Er sagt mir aber "invalid type of argument 'unary *'"
    Wenn ich den Dekrementierungsoperator * vor dem cluster weglasse,
    sagt er mir: no matching function to call erase(&int)...

    Verstehe nicht was ich falsch mache.

    Danke mal wieder für die Hilfe.

    Jerrey



  • at gibt dir keinen Iterator zurück, den du zum löschen brauchst. Hier würde man sowas machen:

    int k = 2;
    cluster->erase(cluster->begin () + k);
    


  • Jerrey schrieb:

    *Lacht*

    Ich denke ich deklariere die Vektoren einfach global.....

    *Lacht auch*

    Ich denke, Du solltest besser mal ein gutes Buch über objektorientiertes Programmieren lesen.....



  • Schon gut... @ *lacht*

    Aber was habt ihr denn gegen Freunde???
    Wäre es nicht am einfachsten die Funktion in der ich Cluster definiert habe als Freund einzubaun?



  • Jerrey schrieb:

    Schon gut... @ *lacht*

    Aber was habt ihr denn gegen Freunde???
    Wäre es nicht am einfachsten die Funktion in der ich Cluster definiert habe als Freund einzubaun?

    Wo bist du den nun? - Dein letztes Problem habe ich ja gelöst..



  • [quote="drakon"]
    Wo bist du den nun? /quote]
    Noch so ein Fehler den ich nicht mehr sehen kann. Es heißt "denn" und nicht "den".

    @Jerrey: Dir fehlt es hinten und vorne an Grundlagen (du deferenzierst schon wieder falsch). Bevor du irgendwelche Algorithmen implementieren willst, solltest du erstmal die Grundlagen (!) der Sprache beherrschen. 🙄



  • henker schrieb:

    [quote="drakon"]
    Wo bist du den nun? /quote]
    Noch so ein Fehler den ich nicht mehr sehen kann. Es heißt "denn" und nicht "den".

    Herrlich 🙂

    Ansonsten hat der Henker aber schon nicht Unrecht. Mit Zeigern, Referenzen und Iteratoren muß man einfach umgehen können, wenn man nicht ganz triviale Sachen sinnvoll in C++ umsetzen möchte.



  • henker schrieb:

    @Jerrey: Dir fehlt es hinten und vorne an Grundlagen (du deferenzierst schon wieder falsch). Bevor du irgendwelche Algorithmen implementieren willst, solltest du erstmal die Grundlagen (!) der Sprache beherrschen. 🙄

    Bevor du anfängst bei anderen Tippfehler zu bemängeln, solltest du selber einmal bei dir schauen. Ich weiss persönlich nicht, was "deferenzierst" sein soll...

    Solche Fehler sind imo bei weitem gefährlicher, da du da einem Anfänger falsche Ausdrücke beibringst.



  • Du hast als Baby bestimmt auch mal versucht, das Quadrat durch das Dreieck zu drücken!



  • Schon wieder falsch?

    Ja wir müssen das halt implementieren. Sooorryy. Aber ich will es auch lernen. ich könnte mir es wirklich einfacher machen. Sprich: globale variablen :^^



  • Zu globalen Variablen haben wir uns glaube ich genügend deutlich ausgedrückt. 😉

    Aber worin besteht nun dein aktuelles Problem?



  • Ja alles okay jetzt. Blos die Zahlen sind nicht sortiert. *lacht* Zumindest steigt die Fehlerrate je weiter man nach hinten kommt.
    Und gegen Ende ist überhaupt keine Ordnung mehr zu erkennen.


Anmelden zum Antworten