Salut à tous,
mon problème consiste à créer une classe et des fonctions templates.
Bien que je me sois beaucoup renseigné sur le sujet, je me pose pas mal
de questions:
Dans une classe normale , j'ai surchargé des
fonctions qui servent à remplir des ListBox et des ComboBox.
Code :
- //-----------------------------------------------------------------------
- //Permet de remplir un ComboBox avec la liste des statistiques
- void __fastcall Remplir_Box::RemplirStats(TComboBox * Objet)
- {
- Objet->Clear();
- Configuration *Options = Configuration::getInstance();
- for (int i=0; i < Options->GetNbreStats(); i++)
- Objet->AddItem(Options->Stat_Nom_Long(i),this);
- Objet->ItemIndex = 0;
- }
- //-----------------------------------------------------------------------
- //Permet de remplir un ComboBox avec la liste des statistiques
- void __fastcall Remplir_Box::RemplirStats(TListBox * Objet)
- {
- Objet->Clear();
- Configuration *Options = Configuration::getInstance();
- for (int i=0; i < Options->GetNbreStats(); i++)
- Objet->AddItem(Options->Stat_Nom_Long(i),this);
- Objet->ItemIndex = 0;
- }
|
Comme vous le voyez, ces deux fonctions sont identiques hormis le fait que les arguments ont changé...
Je me suis dit que je pouvais éviter cela en créant une fonction
template...
Donc:
1) Ai-je tort de penser cela?
2) Je dois donc faire des fonctions template... Mais la classe qui les
encapsule doit-elle être également template?
3) Comment s'écrirait la fonction ci-dessus en template? (Pour que je
puisse m'en inspirer pour les autres fonctions ;-) )
Merci d'avance!!
---------------
Another .Net Blog