Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Click here to view the latest version of this page.
Front Page / Data Types / Numeric / size_t

size_t

Synopsis

template<
      std::size_t N
    >
struct size_t
{
    // unspecified
    // ...
};

Description

An Integral Constant wrapper for std::size_t.

Header

#include <boost/mpl/size_t.hpp>

Model of

Integral Constant

Parameters

Parameter Requirement Description
N An integral constant A value to wrap.

Expression semantics

The semantics of an expression are defined only where they differ from, or are not defined in Integral Constant.

For arbitrary integral constant n:

Expression Semantics
size_t<c> An Integral Constant x such that x::value == c and x::value_type is identical to std::size_t.

Example

typedef size_t<8> eight;

BOOST_MPL_ASSERT(( is_same< eight::value_type, std::size_t > ));
BOOST_MPL_ASSERT(( is_same< eight::type, eight > ));
BOOST_MPL_ASSERT(( is_same< next< eight >::type, size_t<9> > ));
BOOST_MPL_ASSERT(( is_same< prior< eight >::type, size_t<7> > ));
BOOST_MPL_ASSERT_RELATION( (eight::value), ==, 8 );
assert( eight() == 8 );

See also

Data Types, Integral Constant, int_, long_, integral_c