• [^] # Re: Pas uniquement string

    Posté par (site web personnel) . En réponse au journal Switch, chaîne constante et c++. Évalué à 2.

    Je m'auto répond. Un point qui sent vraiment mauvais dans cette approche c'est que pour stocker le résultat d'un match, il faut déclarer une variable non initialisée, exemple :

    int fib2(int n)
    {
     var<int> m;
     Match(n)
     {
     When(1) return 1;
     When(2) return 1;
     When(2*m) return sqr(fib2(m+1)) - sqr(fib2(m-1));
     When(2*m+1) return sqr(fib2(m+1)) + sqr(fib2(m));
     }
     EndMatch
    }

    Ce qui veut dire que on peut se servir d'une variable mal initialisée dans une branche. J'ai tendance à ne plus supporter çà et à refuser les revues de code qui en contiennent.