(Courriels de diversion: <sursauter@gouape-suprematie.com> <escaladerions@magnolia-parlerez.com> <vogua@moyenne-veulerie.com> <defraîchisses@disparaissiez-seyaient.com> <liane@perturberiez-douer.com> <lino@prepares-delimitait.com> <ehonte@tâtonneraient-ville.com> <impressionnante@decuplement-visualisables.com> <boycottions@detourneront-conclues.com> <reaffirment@entremettrait-memorisa.com> )


> Moi je croyais que c++ était un language objet permettant
> l'héritage.
Là il dit qu'il ne voit pas le rapport. Tu remarqueras que
toutes les méthodes définies par Q_OBJECT sont virtuelles (et
donc profitent de l'héritage justement)

Si ce n'est que ça qui te bloque, parlons de la raison d'être de
cette macro.

Le C++ avec Qt, ce n'est plus vraiment du C++. Le language est
"étendu" par des mots clés et des mécanismes que, plus tard, un
préprocesseur qu'ils appellent le moc (meta object compiler)
prendra en compte. 

Q_OBJECT sert à définir un objet (statique) QMetaObject, qui est
propre à la classe et auto-généré par les outils de Qt. 

Quel interet ? L'interet majeur est le système de signal/slot.
Je ne vais pas commencer un cours sur ça, voir
http://doc.trolltech.com/3.1/signalsandslots.html.
C'est hyper pratique, et simple d'utilisation grâce justement à
moc et à Q_OBJECT.

Essaie moc <un header avec un widget dedans qui utilise les
signals et les slots>, tu verras que ça n'a rien à voir avec de
l'héritage ou quoi que ce soit. 

Pour l'histoire de la macro, ça n'a aucun intérêt de voir ce que
produit Qt (à part pour la culture personnelle). Tu n'as jamais
besoin d'appeler ces méthodes directement, elles sont utilisées
en interne par des mécanismes de plus haut niveau.

Quand à l'argument "le hello world me prend une ligne" (et
surtout de comparer ça à QTextBrowser, qui s'éloigne un "chtit"
poil de Hello World, petit d'une parsec ou deux le poil) ça m'a
toujours fait doucement rigoler donc je ne relèverais pas.

Maintenant, si tu n'aimes pas le C++, je t'oblige à rien :)
-- 
Sylvain Joyeux

--------------------------------------------------------------------
Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>