2012-01-13 14 views

cevap

17

Boost'a gerek yoktur. Standart C++ işlevi olan <cstdlib>'dan std::getenv kullanın.

+0

Takviyede taşınabilir sistem ortamı değişkenleri yok gibi görünüyor. FileSystem'in taşınabilir dosya adları vardır, ancak ortam değişkenleri taşınabilir değildir: Win7'de HOMEPATH vardır ve * NIX'in USERNAME ve USER için aynı olan bir HOME vardır. – Arman

+0

@Arman: taşınabilir homedir bulma nispeten yararsızdır, çünkü Windows ve Unix, kullanıcıya özgü verilerin depolanması gerektiği konusunda çok farklı kurallara sahiptir. –

+0

Evet Katılıyorum, ancak program genel seçeneklerinin saklanması bazı kurallara sahip olmak için yararlıdır: linux üzerinde genellikle kullanıcı programları $ HOME/.myset veya windows muhtemelen% userprofile% /. Myset veya benzeri bir şey depolamaktadır. Bu nedenle taşınabilir fonksiyonlara sahip olmak daha iyidir. – Arman

3

Muhtemelen bir düz c (ve ++) getenv() işlevini istiyorsanız, bunun artırılmasına gerek yoktur.

İlgili konular