Bonjour,
y a-t-il un moyen de définir des méthodes spécifiques à un type et une méthode par défaut dans une classe template ?
Bonjour,
y a-t-il un moyen de définir des méthodes spécifiques à un type et une méthode par défaut dans une classe template ?
je ne suis pas sûr de ce que tu veux faire, mais je crois que la faq peut te donner des éléments de réponse
Si je comprends bien ta question,
çà?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 template <typename T> class Test ... { // définition générale virtual T maMethode() const = 0; }; class Concrete : public Test<string> { string maMethode() const { // partie spécifique } };
les raisonnables ont duré, les passionné-e-s ont vécu
Il s'agissait de la spécialisation de la classe comme proposé par GeantVert13. Ça n'a pas l'air bien gérer par le C++, je vais voir si je trouve une autre solution.
Qu'est ce qui n'est pas bien géré ? La spécialisation template ?
Tu veux créer une classe template avec divers fonctions selon les paramètres templates mais dont les instances (classes) auront quand même toutes certaines fonctions en commun ?
Si c'est ça il faudrait une information supplémentaire, les données membres dépendent-elles des paramètres templates ou non ?
Les solutions à ce genre de problème sont les templates couplé à l'héritage, comme te le propose rmaker, la facon exact de faire l'héritage dépendra des besoins exacts (entre autre l'information supplémentaire qu'il manque).
Find me on github
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager