operator() überladen



  • Tachyon schrieb:

    pumuckl schrieb:

    [...]ebentuell auch Überladen des operator[] mit zwei Argumenten.[...]

    Sowas geht?

    Leider nicht, da hab ich mich auch schon darüber geärgert. Was ist eigentlich der Grund, dass das nicht geht? Es wäre ja wohl nicht allzu schwierig, sowas zu implementieren, und wenn man gerade dabei ist (C++0x)...



  • std::vector<std::vector<long> > v;
    // Zugriff:
    long val = v[1][2];
    


  • simon.gysi schrieb:

    std::vector<std::vector<long> > v;
    // Zugriff:
    long val = v[1][2];
    

    Und?



  • simon.gysi schrieb:

    std::vector<std::vector<long> > v;
    // Zugriff:
    long val = v[1][2];
    

    Welcher Operator soll deiner Meinung nach nun für zwei Argumente überladen sein?

    Wir meinten viel eher so was:

    Table[3,4] = 72;
    


  • Hallo,

    Nexus schrieb:

    Wir meinten viel eher so was:

    Table[3,4] = 72;
    

    Und was ist mit dem Komma-Operator? Nein, das wäre nicht gut...

    MfG,

    Probe-Nutzer



  • Probe-Nutzer schrieb:

    Und was ist mit dem Komma-Operator? Nein, das wäre nicht gut...

    Für skalare Typen (in diesem Falle int ) kann man sowieso keine Operatoren überladen. Aber selbst wenn es ginge, würde es mit dem Komma-Operator ein Riesengefrickel werden, womöglich müsste man noch Klammern um den Ausdruck schreiben. Dann lieber eine Funktion.



  • Nexus schrieb:

    Probe-Nutzer schrieb:

    Und was ist mit dem Komma-Operator? Nein, das wäre nicht gut...

    Für skalare Typen (in diesem Falle int ) kann man sowieso keine Operatoren überladen. Aber selbst wenn es ginge, würde es mit dem Komma-Operator ein Riesengefrickel werden, womöglich müsste man noch Klammern um den Ausdruck schreiben. Dann lieber eine Funktion.

    Davon abgesehen, sollte man lieber die Finger vom operator, lassen. 😉



  • Vielen Dank für die Antworten. Habe mich für eine Variante entschieden. 😃



  • mbu schrieb:

    Vielen Dank für die Antworten. Habe mich für eine Variante entschieden. 😃

    Für welche? 😉



  • Nexus schrieb:

    mbu schrieb:

    Vielen Dank für die Antworten. Habe mich für eine Variante entschieden. 😃

    Für welche? 😉

    Für meine eigene. Da da keine Einwände kamen (ausser vllt. schlechter Stil), benutz ich erstmal diese Variante.


Anmelden zum Antworten