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

PrevUpHomeNext

remove_reference

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

template <class T> using remove_reference_t = typename remove_reference<T>::type; // C++11 and above

type: The same type as T, but with any reference modifier removed.

C++ Standard Reference: 8.3.2.

Compiler Compatibility: All current compilers are supported by this trait.

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

Table 1.35. Examples

Expression

Result Type

remove_reference<int>::type

int

remove_reference<int const&>::type

int const

remove_reference<int&&>::type

int

remove_reference<int*>::type

int*

remove_reference<int*&>::type

int*



PrevUpHomeNext