TicTacToe



  • Darum gings nicht 😉
    Mir gings um die pauschale Aussage "macht jedenfalls gar keinen Sinn", noch spezifischer um das "gar keinen", und das stimmt so nicht. Man kann sich durchaus Fälle vorstellen, bei denen das zumindest ein bisschen Sinn macht. Nämlich, wenn man Aufrufe verschachtelt. z.B. bei in Qt mit den ganzen Copy-On-Write Containern wäre das ein Problem.

    QVector<SomeClass> itemList() const {return m_items;}
    itemList().first();
    

    Würde evtl. schon zu einer Deep Copy führen. Und ähnliche Konstrukte sehe ich bei uns im Code sehr häufig. Deswegen find ich so eine "gar keinen Sinn" Aussage hier zu pauschal, man muss zumindest im Hinterkopf behalten, was es alles für Möglichkeiten gibt.



  • Der Thread ist ganz schön ausgeartet. Also ich bin hier bei dem Stand, dass ich wahrscheinlich noch die Auswertungen auf mein std::pair umschreibe und den Rest so lassen kann wie bei meinen letzten Post. Zumindest hat niemand weitere Einwände geäußert. Wenn ihr noch Tipps habt, die nicht den Rahmen des usecases sprengen, bin ich ganz Ohr. Ansonsten schonmal vielen Dank für die vielen Tipps und Hinweise. 👍🏻 👍🏻 👍🏻



  • @Mechanics sagte in TicTacToe:

    QVector<SomeClass> itemList() const {return m_items;}
    itemList().first();
    

    Verstehe das Beispiel nicht. Da ist die Methode const und nicht der Rückgabewert!?
    Edit:

    Ok, ich verstehe dein Beispiel. Also gut, wie immer in C++ ist eine absolute Aussage auch hier fehl am Platz.
    Nehme das "gar keinen Sinn" zurück!


Anmelden zum Antworten