将头文件迁移到配置文件

时间:2013-05-11 02:52:57

标签: c++

我目前有一个头文件,其中包含20多个定义。这些定义设置各种对象的属性。现在我必须将这些定义移动到配置文件中,以便在其中一个值发生更改时不必重建整个项目。我目前正在考虑有一个静态类,其静态属性是从配置文本文件中读取而设置的。还有更好的方法吗?我知道我将不得不编写一个全文解析器,它将检查文本文件中的键值,然后填充值。还有其他方法吗?检索地图价值对的建议?

2 个答案:

答案 0 :(得分:2)

如果您使用的是Windows,那么ini文件和GetPrivateProfileString会很快而且很脏。

答案 1 :(得分:2)

如果您只是通过最小化重新编译来加速构建,则不需要编写自己的解析器。您可以用C ++编写配置。

将参数声明放在包含文件中。

/* config.hpp */
class config
   {
public:
   static const int PARAM1;
   static const std::string PARAM2;
   static const double PARAM3;
   };

在需要更改配置时编辑并重新编译以下C ++文件。

/* config.cpp */
const int config::PARAM1 = 1234;
const std::string config::PARAM2 = "hello";
const double config::PARAM3 = sin(M_PI/4);