Freigeben über


reference_wrapper-Klasse

Umschließt einen Verweis ein.

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
    };

Hinweise

reference_wrapper<Ty> ist die konstruierbare und zuweisbare Kopie und enthält einen Zeiger an, der auf ein Objekt vom Typ Ty zeigt.

Eine Spezialisierung reference_wrapper<Ty> wird von std::unary_function<T1, Ret> (den geschachtelten Typ result_type als Synonym für Ret und geschachtelten Typ argument_type daher, definiert als Synonym zu T1) nur wenn der Typ Ty lautet berechnet:

ein Funktionstyp oder -Zeiger, zu arbeiten Typ, der ein Argument vom Typ T1 akzeptiert und Ret zurückgibt; oder

ein Zeiger auf eine Memberfunktion Ret T::f() cv, wobei cv der LebenslaufQualifizierer der Memberfunktion darstellt; der Typ T1 lautet cvT*; oder

ein Klassentyp, der von unary_function<T1, Ret> abgeleitet wird.

Eine Spezialisierung reference_wrapper<Ty> wird von std::binary_function<T1, T2, Ret> (den geschachtelten Typ result_type als Synonym für Ret, geschachtelten Typ first_argument_type als Synonym für T1 und geschachtelten Typ second_argument_type daher, definiert als Synonym zu T2) nur wenn der Typ Ty lautet berechnet:

ein Funktionstyp oder -Zeiger, zu arbeiten Typ, der zwei Argumente der Typen T1 und ein T2 akzeptiert und Ret zurückgibt; oder

ein Zeiger auf eine Memberfunktion Ret T::f(T2) cv, wobei cv der LebenslaufQualifizierer der Memberfunktion darstellt; der Typ T1 lautet cvT*; oder

ein Klassentyp, der von binary_function<T1, T2, Ret> abgeleitet wird.

Konstruktoren

reference_wrapper::reference_wrapper

Erstellt ein Objekt vom Typ reference_wrapper.

Typedefs

reference_wrapper::result_type

Der schwache Ergebnistyp des umschlossenen Verweises.

reference_wrapper::type

Der Typ des umschlossenen Verweises.

Memberfunktionen

reference_wrapper::get

Erhält den umschlossenen Verweis.

Operatoren

reference_wrapper::operator Ty&

Ruft einen Zeiger an den umschlossenen Verweis.

reference_wrapper::operator()

Ruft den umschlossenen Verweis auf.

Anforderungen

Header: <functional>

Namespace: std

Siehe auch

Referenz

cref-Funktion

ref-Funktion

Weitere Ressourcen

<functional> Member