2012-01-13 12 views

risposta

17

Non è necessario per Boost. Utilizzare std::getenv da <cstdlib>, che è una funzione standard di C++.

+0

Sembra che non ci siano variabili di ambiente di sistema portatili in boost. FileSystem ha un nome file portatile, ma le variabili di ambiente non sono portabili: Win7 ha HOMEPATH e * NIX ha un HOME, lo stesso per USERNAME e USER. – Arman

+0

@Arman: la ricerca di homedir portatile è relativamente inutile, poiché Windows e Unix hanno convenzioni molto diverse su dove devono essere memorizzati i dati specifici dell'utente. –

+0

Sì, sono d'accordo, ma per memorizzare le opzioni generali del programma è utile avere qualche convenzione: su Linux normalmente i programmi utente memorizzano $ HOME/.myset o Windows probabilmente% userprofile% /. Myset o qualcosa di simile. Quindi meglio avere funzioni portatili. – Arman

3

Probabilmente si desidera una semplice funzione c (e ++) getenv(), non deve essere potenziata.

Problemi correlati