Pour une application qui utilise un certain nombre de variables d'environnement, existe-t-il une sorte de convention ou «meilleure pratique» pour saisir des variables d'environnement et les placer dans un tas de const
? Évidemment, je veux revenir à une valeur par défaut pour chaque variable d'environnement. En ce moment, en utilisant ce qui suit semble être une façon très désordonnée de le faire:C++ affecter const à la variable d'environnement ou à la valeur par défaut
char* x;
const SOME_VARIABLE;
if (NULL == (x = getenv("SOME_VARIABLE")))
SOME_VARIABLE = 5; // default value
else
SOME_VARIABLE = x;
Je pourrais aussi écrire une fonction qui enveloppe getenv
pour renvoyer une valeur par défaut si une variable d'environnement est vide, mais je ne suis pas sûr si c'est même la meilleure façon de le faire. Je pourrais également faire disparaître en utilisant const
, mais cela ne semble pas non plus une bonne chose à faire.
Des pensées?
En aparté, en nommant une variable ou constante en C++ tout en majuscules ne sont pas une bonne idée que par convention, tous les noms en majuscules sont utilisés par le Le préprocesseur et une macro de préprocesseur peuvent facilement modifier votre variable. –
Ah, merci pour le conseil. J'avais l'impression que les constantes sont généralement supposées être toutes majuscules. – dav
@Dav, vous avez probablement appris ce style à partir du code où toutes les constantes étaient des macros ('#define SOME_VARIABLE 5'). Ils sont en majuscules parce qu'ils sont des macros, pas parce qu'ils sont constants. –