Bonjour,
j'aimerais avoir un conseil.
Voilà, j'ai 2 classes CCall et CLine avec leurs attributs et méthodes. J'ai rajouté des fonctions "statiques" à ces classes car ce sont des fonctions qui ne s'appliquent pas sur des objets de la classe, mais qui ont une certaine relation avec la classe. Disons que sans ces classes, ces fonctions n'auraient aucun interêt, et ne pourraient être utilisés.
Et j'aimerais "caser en quelque part" la fonction utilitaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 class CCall { DWORD m_dwState; ... }; class CLine { std::string m_name; //"IPPhone: 213 public: std::string GetName(); };
qui retournerait "213" pour mon exemple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part std::string GetNumberByName(const std::string& name)
Et j'aimerais aussi caser une fonction utilitaire qui me renverrait une chaine en fonction d'un nombre passé en paramètre :
Mais je ne peux pas l'appeler directement sur un objet CCall car le dwState passé peut être obtenu de par ailleurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 std::string GetCallStateString(DWORD dwState) { std::string strState = ""; switch (dwState) { case LINECALLSTATE_IDLE : strState = "Idle"; break; case LINECALLSTATE_OFFERING : strState = "Offering"; break; ... } return strState; }
Donc voilà, vaut-il mieux mettre ces fonctions en statiques dans mes classes, ou leur créer un namespace ?
Merci par avance,
@+
Partager