Question philosophique fonction statique
Bonjour,
J'ai une petite question philosophique et je n'ai pas su trancher :
Code:
1 2 3 4 5 6 7 8 9 10
|
class A
{
public:
...
private:
static inline const char *MonFormat1(void) { return "==> %d"; }
inline const char *MonFormat2(void) const { return "==> %d"; }
}; |
La classe A dispose d'une fonction retournant un format d'affichage à utiliser. J'ai 2 possibilités :
- la déclarer en statique (comme pour la fonction MonFormat1)
- la déclarer en membre constant (comme pour la fonction MonFormat2)
Cette fonction est privée car elle n'a pas besoin d'être connue à l'extérieur de la classe.
Cette fonction ne manipule aucunes des variables membres de la classe.
J'aurai aussi pu remplacer cette fonction par un #define.
Je n'ai pas trouvé de raisons valables permettant de choisir une option plutôt que l'autre, donc si vous avez des idées, je suis preneur.
Raymond