Partager via


reference_wrapper, classe

Inclut une référence.

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

Notes

reference_wrapper<Ty> est une copie construtible et assignable, et contient un pointeur qui indique un objet de type Ty.

Une spécialisation reference_wrapper<Ty> est dérivée d'std::unary_function<T1, Ret> (par conséquent la définition du type result_type imbriqué comme synonyme de Ret et le type argument_type imbriqué comme synonyme de T1) uniquement si le type Ty est :

un type ou un pointeur de fonction pour exécuter le type prend un argument de type T1 et retourne Ret; ou

pointeur vers une fonction membre Ret T::f() cv, où cv représente les cv- identificateurs de la fonction membre ; le type T1 est cvT*; ou

un type de classe dérivé d'unary_function<T1, Ret>.

Une spécialisation reference_wrapper<Ty> est dérivée d'std::binary_function<T1, T2, Ret> (par conséquent la définition du type result_type imbriqué comme synonyme de Ret, le type first_argument_type imbriqué comme synonyme de T1, puis tapez second_argument_type imbriqué comme synonyme de T2) uniquement si le type Ty est :

un type ou un pointeur de fonction pour exécuter le type prend deux arguments des types T1 et T2 et retourne Ret; ou

pointeur vers une fonction membre Ret T::f(T2) cv, où cv représente les cv- identificateurs de la fonction membre ; le type T1 est cvT*; ou

un type de classe dérivé d'binary_function<T1, T2, Ret>.

Constructeurs

reference_wrapper::reference_wrapper

Construit un reference_wrapper.

Typedef

reference_wrapper::result_type

Type de résultat faible de la référence encapsulée.

reference_wrapper::type

Le type de la référence encapsulée.

Fonctions membres

reference_wrapper::get

Obtient la référence encapsulée.

Opérateurs

reference_wrapper::operator Ty&

Obtient un pointeur à la référence encapsulée.

reference_wrapper::operator()

Appelle la référence encapsulée.

Configuration requise

En-tête : <functional>

Espace de noms : std

Voir aussi

Référence

cref, fonction

ref, fonction

Autres ressources

<functional> membres