27Fermer29
Kevin KoflerLe 04/09/2007 à 23:22
Zephyr (./24) :
- Plus grande cohérence au niveau des types (pas de types int / float & co qui sont non-objets et s'opposent donc à tous les autres)

C++ réalise la cohérence dans l'autre sens, en permettant de créer les objets aussi sur la pile, de les passer par valeur etc., comme un nombre.
- Entiers non signés

Idem en C++. tongue
- Introduction de pas mal de mots-clés très agréables pour alléger l'écriture du code (foreach, is/as, etc)

Qt a aussi foreach. tongue

Quant à is/as, je trouve obj->inherits("QFoo") et qobject_cast<QFoo *>(obj) largement suffisants. smile
- Concept de pointeurs sur fonction/méthode templatée ou non extrêmement puissant via les "delegate"

Idem en C++ (sauf que ça ne s'appelle pas "delegate", mais tout simplement "pointeur"). tongue
- Passage des variables par valeur ou référence au choix (et non pas "par valeur pour les int/float, par référence pour les objets")

Idem en C++. tongue
- Vrai support des templates présent dès le début et pas ajouté à l'arrache => API correctement templatée

Idem en C++. tongue
- Déclarations anonymes de fonctions avec accès au scope appelant, pour effectuer des recherches dans une collection selon plusieurs critères en 2 ou 3 lignes seulement par exemple

Mouais, c'est vrai que les lambda expressions manquent en C++. sad
- Surcharge/redéfinition des opérateurs

Idem en C++. tongue
- Gestion des évènements réduite à sa plus simple expression (mot clé "event")

Qt a le système signals/slots pour la gestion des évènements.
- Formulaires Windows et tout ce qui en découle gérés à la façon "Delphi"

Vive Qt Designer. tongue