std::function<R(Args...)>::target_type (3) - Linux Manuals

std::function<R(Args...)>::target_type: std::function<R(Args...)>::target_type

NAME

std::function<R(Args...)>::target_type - std::function<R(Args...)>::target_type

Synopsis


const std::type_info& target_type() const noexcept; (since C++11)


Returns the type of the stored function.

Parameters


(none)

Return value


typeid(T) if the stored function has type T, otherwise typeid(void)

Example


// Run this code


  #include <functional>
  #include <iostream>


  int f(int a) { return -a; }
  int main()
  {
      // fn1 and fn2 have the same type, but their targets do not
      std::function<int(int)> fn1(f),
                              fn2([](int a) {return -a;});
      std::cout << fn1.target_type().name() << '\n'
                << fn2.target_type().name() << '\n';
  }

Possible output:


  int (*)(int)
  main::$_0

See also


       obtains a pointer to the stored target
target (public member function)