Salut,

Je cherche le moyen de faire une classe template ou je pourrai préciser le nom d'une variable de la classe qui servira de critère de trie uniquement lors de l'instanciation du template.

Je m'explique par un exemple très simple :

J'ai la classe A, qui est une classe ordinaire, elle comporte une variable membre nommé "toto", donc :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
class A
{
     public :
        int toto;
}
J'ai la classe B, qui est une classe ordinaire aussi, elle comporte une variable membre nommé "titi", donc :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
class B
{
     public :
        int titi;
}
J'ai une autre classe Tem, qui est une classe template:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
template <class T>class Tem  
{
public:
     FaitTrie();
     ....
}
Je voudrai que quand je crée un template en remplacant "T" par A, la méthode "FaitTrie" tienne compte de la variable "toto", mais quand je fais le template pour B, la même méthode tienne compte de "titi".

Cela vous semble t 'il possible ? Ou est ce un cas impossible à faire en C++ (en Visual C++) ?

Merci d'avance pour vos avis ou solutions


[Balises CODE rajoutées par Loulou24, meci d'y penser à l'avenir]