list_c
template<
typename T
, T C1 = implementation-defined
, T C2 = implementation-defined
, ...
, T CN = implementation-defined
>
struct list_c
{
};
Similary to vector_c, list_c is a shorcut interface whose whole purpose is to make the creation of a list of Integral Constants less verbose:
typedef list_c<unsigned long,-1,0,1,1,-1,0,0,1,-1> data;
If list_c didn't exist, instead of the above line you would have to write this:
typedef list<
integral_c<unsigned long,-1>
, integral_c<unsigned long,0>
, integral_c<unsigned long,1>
, integral_c<unsigned long,1>
, integral_c<unsigned long,-1>
, integral_c<unsigned long,0>
, integral_c<unsigned long,0>
, integral_c<unsigned long,1>
, integral_c<unsigned long,-1>
> data;
#include "boost/mpl/list_c.hpp" #include "boost/mpl/list/list0_c.hpp" #include "boost/mpl/list/list10_c.hpp" ... #include "boost/mpl/list/list50_c.hpp"
Random Access Sequence, list, vector, vector_c, range_c