reference_wrapper — Klasa
Otacza odwołanie.
template<class Ty>
class reference_wrapper
: public unary_function<T1, Ret> // see below
: public binary_function<T1, T2, Ret> // see below
{
public:
typedef Ty type;
typedef T0 result_type; // see below
reference_wrapper(Ty&);
Ty& get() const;
operator Ty&() const;
template<class T1, class T2, ..., class TN>
typename result_of<T(T1, T2, ..., TN)>::type
operator()(T1&, T2&, ..., TN&);
private:
Ty *ptr; // exposition only
};
Uwagi
A reference_wrapper<Ty> jest kopią skonstruować i cesji i przytrzyma wskaźnik, który wskazuje na obiekt typu Ty.
Specjalizacja reference_wrapper<Ty> jest pochodną std::unary_function<T1, Ret> (stąd Definiowanie typu zagnieżdżonego result_type jako synonim Ret i typu zagnieżdżonego argument_type jako synonim T1) tylko wtedy, gdy typ Ty jest:
Typ funkcji lub wskaźnika do funkcji typu biorąc jeden argument typu T1 i zwracanie Ret; lub
wskaźnik do funkcji członka Ret T::f() cv, gdzie cv reprezentuje element członkowski funkcja cv kwalifikatory; the type T1 is cvT*; lub
Typ klasy, pochodzący z unary_function<T1, Ret>.
Specjalizacja reference_wrapper<Ty> jest pochodną std::binary_function<T1, T2, Ret> (stąd Definiowanie typu zagnieżdżonego result_type jako synonim Ret, zagnieżdżony typ first_argument_type jako synonim T1i typu zagnieżdżonego second_argument_type jako synonim T2) tylko wtedy, gdy typ Ty jest:
Typ funkcji lub wskaźnika do funkcji typu biorąc dwa argumenty typów T1 i T2 i zwracanie Ret; lub
wskaźnik do funkcji członka Ret T::f(T2) cv, gdzie cv reprezentuje element członkowski funkcja cv kwalifikatory; the type T1 is cvT*; lub
Typ klasy, pochodzący z binary_function<T1, T2, Ret>.
Konstruktorów
Tworzy reference_wrapper. |
Typedefs
Typ wyniku słabe odwołanie zawinięty. |
|
Typ odwołania zawinięty. |
Funkcje członkowskie
Pobiera odwołanie zawinięty. |
Operatory
Pobiera wskaźnik do odwołania zawinięty. |
|
Wywołuje odwołanie zawinięty. |
Wymagania
Nagłówek: <functional>
Przestrzeń nazw: std