Question d'habitude. Quand tu commence à jouer avec des API fluent, ça se lit vite.
En fait l’implémentation est complexe, mais l'usage est relativement simple et lisible. De mon point de vue il n'est pas forcement nécessaire de comprendre l’implémentation d'une abstraction pour l'utiliser correctement.
Ainsi j'aime bien l'approche StringSwitch qui est très claire (à mon sens). Je trouve que l'approche à base de std::map ne devrait pas exposer la std::map directement ni le find. Je ferais un truc du genre : (Api non testé).
[^] # Re: Lisibilité du code
Posté par Guillaum (site web personnel) . En réponse au journal Switch, chaîne constante et c++. Évalué à 4.
En fait l’implémentation est complexe, mais l'usage est relativement simple et lisible. De mon point de vue il n'est pas forcement nécessaire de comprendre l’implémentation d'une abstraction pour l'utiliser correctement.
Ainsi j'aime bien l'approche
StringSwitchqui est très claire (à mon sens). Je trouve que l'approche à base destd::mapne devrait pas exposer lastd::mapdirectement ni lefind. Je ferais un truc du genre : (Api non testé).