19 General utilities library [utilities]

19.14 Function objects [function.objects]

19.14.5 Class template reference_­wrapper [refwrap]

19.14.5.6 Transformation type trait unwrap_­reference [refwrap.unwrapref]

template<class T> struct unwrap_reference;
If T is a specialization reference_­wrapper<X> for some type X, the member typedef type of unwrap_­reference<T> is X&, otherwise it is T.