【发布时间】:2013-03-08 21:01:46
【问题描述】:
假设我在命名空间中定义了一堆常量:
namespace FooConstants{
const string foo1 = "foo1";
const string foo2 = "foo2";
//...
const string fooN = "fooN";
}
是否可以使用 Boost 来“迭代”这些常量名称?类似于宏的东西,它扩展生成foo1、foo2 到fooN,并让我对每个做一些事情。我相信这可以使用一些 Boost 库来完成,但我找不到它。
顺便问一下,这种技术有合适的名称吗?
编辑:我被要求澄清这是否意味着在编译或运行时解决。答案是编译时间:我想生成对所有常量进行操作的代码。
【问题讨论】:
-
你知道
N吗? -
假设它是硬编码的,但我想解决一般情况(任何 N 值)