Boost是一个开放源码库,提供一系列C++的基础库和工具。Boost.MPL(Meta Programming Library)是Boost库中用于元编程的一部分。其中包含了一些模板元编程技巧,比如模板元函数、条件式选择结构、集合元操作和变换、类型转换、循环和递归结构等。
在元编程过程中,我们经常会使用到一些已知的常量值作为模板参数,在此中Boost.MPL又提供了一个非常实用的工具——integral_c<T, N>。它可以定义一个以T类型为值类型的常量integral常量,其值为N。
以下是一个示例程序,展示了如何使用 Boost.MPL 库中的 integral_c 定义和使用一个整型常量。
#include <iostream>
#include <boost/mpl/int