Я хотел бы иметь доступ к переменной среды $HOME
в программе на С++, которую я пишу. Если бы я писал код на C, я бы просто использовал функцию getenv()
, но мне было интересно, есть ли лучший способ сделать это. Вот код, который у меня есть до сих пор:
std::string get_env_var( std::string const & key ) {
char * val;
val = getenv( key.c_str() );
std::string retval = "";
if (val != NULL) {
retval = val;
}
return retval;
}
Должен ли я использовать getenv()
для доступа к переменным среды на С++? Есть ли проблемы, с которыми я, вероятно, столкнусь, что я могу избежать с небольшим количеством знаний?