Partager via


reference_wrapper Class

Encapsule 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

A reference_wrapper<Ty> copie constructible et cessible et maintient un pointeur qui pointe vers un objet de type Ty.

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

un type de fonction ou un pointeur vers le type de fonction prenant un argument de type T1 et le retour Ret; ou

un pointeur vers une fonction membre Ret T::f() cv, où cv représente qualificateurs la fonction membre cv ; the type T1 is cvT*; ou

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

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

un type de fonction ou un pointeur vers le type de fonction qui prend deux arguments de types T1 et T2 et le retour Ret; ou

un pointeur vers une fonction membre Ret T::f(T2) cv, où cv représente qualificateurs la fonction membre cv ; the type T1 is cvT*; ou

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

Bb982605.collapse_all(fr-fr,VS.110).gifConstructeurs

reference_wrapper::reference_wrapper

Construit un reference_wrapper.

Bb982605.collapse_all(fr-fr,VS.110).gifTypedef

reference_wrapper::result_type

Le type de résultat faible de la référence encapsulé.

reference_wrapper::type

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

Bb982605.collapse_all(fr-fr,VS.110).gifFonctions membres

reference_wrapper::get

Obtient la référence encapsulée.

Bb982605.collapse_all(fr-fr,VS.110).gifOpérateurs

reference_wrapper::operator Ty&

Obtient un pointeur vers 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 Function

ref Function

Autres ressources

<functional> membres