• [^] # Re: Donc pour résumer...

    Posté par . En réponse à la dépêche C++17, Genèse d’une version mineure. Évalué à 2.

    c'est qu'il y a un problème au niveau du langage, qui devrait te donner la possibilité de ne pas écrire ce code.

    Sur le fond, c'est pas faux, mais le risque est d'inventer des syntaxes obscures pour éviter d'écrire du code, et ça peut être presque pire.

    L'exemple typique qui me vient en tête, c'est une classe où un seul membre ne doit pas être recopié tel quel. Il faut se farcir un constructeur de copie et un opérateur d'affection au code trivial et dupliqué, y compris dans les classes filles ; des centaines de lignes avec des bugs ou des fautes de frappe potentielles, très peu évolutifs, pour un truc aussi con que "copie tous les membres sauf un". Il y a des dizaines de cas similaires en C++, où on pisse des km de code trivial (getters/setters pour remplacer un mécanisme de permissions en lecture/écriture, par exemple).

    Mais imagine que le comité de normalisation accepte de considérer un problème en particulier. La solution va être de founir une nouvelle syntaxe, de nouveaux mots-clé, des nouveaux comportements indéfinis, des nouvelles constructions obscures qui risquent d'entrer en collision avec des syntaxes existantes—finalement, la solution risque d'être bien pire que le mal, non?