다음을 통해 공유


reference_wrapper Class

에 대 한 참조를 래핑합니다.

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

설명

A reference_wrapper<Ty> 생성 및 할당, 복사본이 며 유형의 개체를 가리키는 포인터를 보유 Ty.

특수화 reference_wrapper<Ty> 에서 파생 된 std::unary_function<T1, Ret> (따라서 중첩된 형식을 정의 result_type 의 동의어로 Ret 및 중첩된 형식이 argument_type 의 동의어로 T1) 경우에만 형식 Ty 입니다:

함수 형식 또는 포인터 형식의 하나의 인수를 사용 하는 함수 형식 T1 를 반환 하 고 Ret. 또는

멤버 함수에 대 한 포인터 Ret T::f() cv, 어디 cv 나타내는 멤버 함수의 cv 한정자입니다. the type T1 is cvT*; 또는

클래스 형식에서 파생 된 unary_function<T1, Ret>.

특수화 reference_wrapper<Ty> 에서 파생 된 std::binary_function<T1, T2, Ret> (따라서 중첩된 형식을 정의 result_type 의 동의어로 Ret, 중첩 형식 first_argument_type 의 동의어로 T1, 및 중첩된 형식이 second_argument_type 의 동의어로 T2) 경우에만 형식 Ty 입니다:

함수 형식이 나 포인터 형식의 두 개의 인수를 갖는 함수 형식 T1 및 T2 를 반환 하 고 Ret. 또는

멤버 함수에 대 한 포인터 Ret T::f(T2) cv, 어디 cv 나타내는 멤버 함수의 cv 한정자입니다. the type T1 is cvT*; 또는

클래스 형식에서 파생 된 binary_function<T1, T2, Ret>.

Bb982605.collapse_all(ko-kr,VS.110).gif생성자

reference_wrapper::reference_wrapper

reference_wrapper를 생성합니다.

Bb982605.collapse_all(ko-kr,VS.110).gif형식 정의

reference_wrapper::result_type

약한 결과 형식 래핑된 참조입니다.

reference_wrapper::type

래핑된 참조 유형을 지정 합니다.

Bb982605.collapse_all(ko-kr,VS.110).gif멤버 함수

reference_wrapper::get

줄 바꿈된에 대 한 참조를 가져옵니다.

Bb982605.collapse_all(ko-kr,VS.110).gif연산자

reference_wrapper::operator Ty&

래핑된 참조 포인터를 가져옵니다.

reference_wrapper::operator()

래핑된 참조를 호출합니다.

요구 사항

헤더: <functional>

네임 스페이스: std

참고 항목

참조

cref Function

ref Function

기타 리소스

<functional> 멤버