remove_all_extents

| Home | Libraries | People | FAQ | More

### remove_all_extents

    template <class T>
    struct remove_all_extents
    {
       typedef see-below type;
    };

type: If `T` is an array type, then removes all of the array bounds on `T`, otherwise leaves `T` unchanged.

C++ Standard Reference: 8.3.4.

Compiler Compatibility: If the compiler does not support partial specialization of class-templates then this template will compile, but the member `type` will always be the same as type `T` except where compiler workarounds have been applied.

Header: `#include <boost/type_traits/remove_all_extents.hpp>` or `#include <boost/type_traits.hpp>`

Table 1.18. Examples

Expression | Result Type
--- | ---
`remove_all_extents<int>::type` | `int`
`remove_all_extents<int const[2]>::type` | `int const`
`remove_all_extents<int[][2]>::type` | `int`
`remove_all_extents<int[2][3][4]>::type` | `int`
`remove_all_extents<int const*>::type` | `int const*`