【发布时间】:2016-06-30 14:08:54
【问题描述】:
我正在尝试从构建服务器捕获环境变量作为可在构建库中使用的编译时常量。我有一个可以查询这些常量的静态类,并且想将constexpr 与std::getenv 一起使用,但是由于getenv 返回一个常量表达式,我得到了constexpr 变量必须从常量表达式初始化的错误非常量char*,因为它是a little long in the tooth。
如果可能的话,我想通过将所有环境变量注入为-DMY_ENV_VAR 来避免构建脚本臃肿。如果答案只是“不,您必须将每个都添加为这样的定义”,并且没有现代替代品 getenv 或我可以使用的技巧,那就这样吧,但是有两个地方需要维护,即不理想。
【问题讨论】:
标签: c++ c++11 environment-variables constexpr