Namespaces
Variants
Views
Actions

deduction guides for std::reference_wrapper

From cppreference.com
 
 
 
Function objects
Function wrappers
(C++11)
(C++11)
Partial function application
(C++20)
(C++11)
Function invocation
(C++17)
Identity function object
(C++20)
Reference wrappers
(C++11)(C++11)
Operator wrappers
Negators
(C++17)
Searchers
Old binders and adaptors
(until C++17)
(until C++17)
(until C++17)
(until C++17)
(until C++17)(until C++17)(until C++17)(until C++17)
(until C++20)
(until C++20)
(until C++17)(until C++17)
(until C++17)(until C++17)

(until C++17)
(until C++17)(until C++17)(until C++17)(until C++17)
(until C++20)
(until C++20)
 
 
Defined in header <functional>
template<typename T>
reference_wrapper(T&) -> reference_wrapper<T>;
(since C++17)

One deduction guide is provided for std::reference_wrapper to support deduction of the sole class template parameter.

[edit] Example

[edit] Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior
LWG 2981 C++17 a redundant deduction guide from reference_wrapper<T> was provided removed
LWG 2993 C++17 defect resolution removed a constructor used for class template argument deduction added deduction guide to compensate