function::target

지정한 대로 호출할 호출 가능 개체를 저장 하는 경우 테스트입니다.

template<class Fty2>
    Fty2 *target();
template<class Fty2>
    const Fty2 *target() const;

매개 변수

  • Fty2
    테스트 대상 호출 가능 개체 형식입니다.

설명

형식 Fty2 는 인수 형식에 대해 호출할 수 있어야 T1, T2, ..., TN 및 반환 형식이 Ret.경우 target_type() == typeid(Fty2), 주소의 대상 개체입니다; 멤버 템플릿 함수를 반환 합니다. 그렇지 않으면 0을 반환합니다.

형식 Fty2 는 인수 형식에 대해 호출할 수 있습니다 T1, T2, ..., TN 및 반환 형식이 Ret 경우 lvalue가 fn, t1, t2, ..., tN 형식의 Fty2, T1, T2, ..., TN각각 INVOKE(fn, t1, t2, ..., tN) 제대로 구성 되었는지 경우 Ret 없는 void, 변환할 수 있는 Ret.

예제

 

// std_tr1__functional__function_target.cpp 
// compile with: /EHsc 
#include <functional> 
#include <iostream> 
 
int neg(int val) 
    { 
    return (-val); 
    } 
 
int main() 
    { 
    typedef int (*Myfun)(int); 
    std::function<int (int)> fn0(neg); 
    std::cout << std::boolalpha << "empty == " << !fn0 << std::endl; 
    std::cout << "no target == " << (fn0.target<Myfun>() == 0) << std::endl; 
 
    Myfun *fptr = fn0.target<Myfun>(); 
    std::cout << "val == " << (*fptr)(3) << std::endl; 
 
    std::function<int (int)> fn1; 
    std::cout << std::boolalpha << "empty == " << !fn1 << std::endl; 
    std::cout << "no target == " << (fn1.target<Myfun>() == 0) << std::endl; 
 
    return (0); 
    } 
 
  

요구 사항

헤더: <functional>

네임 스페이스: std

참고 항목

참조

function Class

function::target_type