|  | Home | Libraries | People | FAQ | More | 
| ![[Note]](../../../../../../doc/src/images/note.png) | Note | 
|---|---|
| This trait has been made obsolete by add_lvalue_reference and add_rvalue_reference, and new code should use these new traits rather than is_reference which is retained for backwards compatibility only. | 
template <class T>
struct add_reference
{
   typedef see-below type;
};
template <class T> using add_reference_t = typename add_reference<T>::type; // C++11 and above
        type: If T
        is not a reference type then T&, otherwise T.
      
C++ Standard Reference: 8.3.2.
        Header:  #include
        <boost/type_traits/add_reference.hpp>
        or  #include <boost/type_traits.hpp>
      
Table 1.14. Examples
| Expression | Result Type | 
|---|---|
| 
                   | 
                   | 
| 
                   | 
                   | 
| 
                   | 
                   | 
| 
                   | 
                   | 
Compiler Compatibility: All current compilers are supported by this trait.