- functional[meta header]
- std[meta namespace]
- functional[meta class]
- cpp17[meta cpp]
namespace std {
template<class T>
reference_wrapper(T&) -> reference_wrapper<T>;
}
std::reference_wrapper
クラステンプレートの型推論補助。左辺値参照から推論する。
#include <iostream>
#include <functional>
int main()
{
int x = 3;
// xへの参照を保持する
std::reference_wrapper r(x);
r.get() += 1;
std::cout << x << std::endl;
}
- r.get()[link get.md]
4
- C++17
- Clang:
- GCC: 7.2 [mark verified]
- Visual C++: ??