Envoyé par
NiamorH
Une remarque HS : je ne crois pas qu'on puisse qualifier les templates C++ de typage faible.
Ce que je voulais dire, c'est que quand on écrit un template de méthode sur un type T, on a aucune information sur ce type T. je me souviens plus de la syntaxe exacte, mais on peut écrire en C++ un truc du style :
template<typename T> T Add(T t1, T t2) { return t1 + t2; }
Et c'est après, si on appelle Add sur un type qui n'a pas d'opérateur +, qu'une erreur de compilation (bien indigeste, d'ailleurs, vivement C++0x et sa jolie syntaxe) apparaît. Alors qu'avec les generics et leurs contraintes (mot-clé where), une méthode générique valide est valide tout le temps.
Je sais pas si je me fais bien comprendre mais je fatigue
Partager