Callback resolu à la compilation... - C++ - Programmation
Marsh Posté le 26-12-2004 à 13:29:09
Citation : |
Pour ce qui'est de l'optimisation, (niveau execution OUI) car là avec ton'template', le code de tes fonctions génériques sera copié à la compilation à chaque appel et pour chaque 'type de donnée' utilisés.
En gros cela revient à écrire chaques fonctions à la main (elles sont connues vu que rien ne doit se passer dynamiquement).
Citation : Toutes remarques sont les bienvenues aussi bien sur la démarche que l'implémentation. |
... struct X : C< .... void event() { callback( "event depuis Y" ); } ..
As tu pensé aux exceptions ? (elles ne sont pas reservées exclusivement à lever 'une erreur'
sinon très bon code et bien refléchi
a+
Marsh Posté le 27-12-2004 à 12:56:54
Merci.
ouned-coding a écrit : As tu pensé aux exceptions ? (elles ne sont pas reservées exclusivement à lever 'une erreur' |
Justement, non. Que puis-je faire pour améliorer les choses ?
Marsh Posté le 26-12-2004 à 11:50:58
Je souhaiterais faire une classe de base callback optimisée utilisable dans tout programme présentant la particularité de lier evennements et traitements de manière statique (définie à la commpilation). Les classes callback et slot que je trouve sur le net sont toutes "dynamiques" (callback modifiable pendant l'exécution). Sauf erreur de ma part, ces solutions sont sans doute lourdes à l'excution si l'on n'a pas besoin de l'aspect dynamique.
Dans le code, voila l'idée : le calbback est paramétré à la compilation avec l'objet de traitement, la fonction membre de traitement et l'ensemble des types adequates.
A l'utilisation, cela donne quelquechose du genre :
Pensez vous que cela apporte réellement une optimisation par rapport à un callback "dynamique" ?
Toutes remarques sont les bienvenues aussi bien sur la démarche que l'implémentation.
-edit : L'objet de traitement est passé à la classe de base callback par référence (copie possible). L'idée est de laisser construire l'objet de traitement par l'utilisateur de la classe callback..
Message édité par xterminhate le 26-12-2004 à 14:59:03
---------------
Cordialement, Xterm-in'Hate...