Il l'est
le code C++ est vraiment trop verbeux, ça n'empêche que la grosse force du C++ reste les templates et la généricité que cela apporte, et normalement on se rend compte des erreurs à la compile.
Ceci dit, ce cas précis doit pouvoir se faire avec Q_DECLARE_METATYPE(T) et QVariant::toString() (pas testé). T devant dans ce cas implémenté QString T::toString(). Ceci dit en cas d'erreur on risque de le voir à l'éxecution et non à la compil (si T n'implémente pas toString, ça va surement compiler, mais au runtime QVariant::toString() renverra une chaine vide)
[^] # Re: Boost ? c'est quoi ?
Posté par Alex . En réponse à la dépêche Sortie de Boost 1.46. Évalué à 1.
Il l'est le code C++ est vraiment trop verbeux, ça n'empêche que la grosse force du C++ reste les templates et la généricité que cela apporte, et normalement on se rend compte des erreurs à la compile.
Ceci dit, ce cas précis doit pouvoir se faire avec Q_DECLARE_METATYPE(T) et QVariant::toString() (pas testé). T devant dans ce cas implémenté QString T::toString(). Ceci dit en cas d'erreur on risque de le voir à l'éxecution et non à la compil (si T n'implémente pas toString, ça va surement compiler, mais au runtime QVariant::toString() renverra une chaine vide)