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.


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();
};
Et j'aimerais "caser en quelque part" la fonction utilitaire :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
std::string GetNumberByName(const std::string& name)
qui retournerait "213" pour mon exemple.


Et j'aimerais aussi caser une fonction utilitaire qui me renverrait une chaine en fonction d'un nombre pass� en param�tre :
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;
}
Mais je ne peux pas l'appeler directement sur un objet CCall car le dwState pass� peut �tre obtenu de par ailleurs.


Donc voil�, vaut-il mieux mettre ces fonctions en statiques dans mes classes, ou leur cr�er un namespace ?

Merci par avance,
@+