34Fermer36
ZephLe 04/09/2007 à 23:37
Kevin Kofler (./28) :
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.

Oui, c'est valable aussi. Par contre on ne peut pas faire de "new entier" en C++, mais bon, la cohérence reste bonne.
- Entiers non signés

Idem en C++. tongue

Encore heureux ^^ je soulignais une (grosse) faiblesse de Java.
Quant à is/as, je trouve obj->inherits("QFoo") et qobject_cast<QFoo *>(obj) largement suffisants. smile

L'objectif est le même, mais "if (animal is Panda)" c'est quand même plus sympa à lire happy
(même si ça reflète souvent une faiblesse de conception du code qui doit utiliser trop souvent ce genre de trucs, mais chut ^^)
- 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

Là aussi, faiblesse de Java.
- Vrai support des templates présent dès le début et pas ajouté à l'arrache => API correctement templatée

Idem en C++. tongue

Idem.
- 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.

Je ne connais pas, je peux rien dire tongue
- Formulaires Windows et tout ce qui en découle gérés à la façon "Delphi"

Vive Qt Designer. tongue

Hmm je demande à voir, la symbiose code <-> contrôles graphiques est totale via Visual Studio, on peut toucher au code et voir les changements s'effectuer via le designer, ou au contraire laisser le code s'écrire, et faire du reverse de l'un à l'autre à tout moment, c'est vraiment très bien foutu (et le code généré reste lisible, contrairement à pas mal d'IDE)

Mais sinon le C++ est très bien aussi hein, ce n'est juste pas le même objectif tongue