std::bad_function_call (3) - Linux Manuals

std::bad_function_call: std::bad_function_call


std::bad_function_call - std::bad_function_call


Defined in header <functional>
class bad_function_call; (since C++11)

std::bad_function_call is the type of the exception thrown by std::function::operator() if the function wrapper has no target.
 std-bad function call-inheritance.svg
Inheritance diagram

Member functions

              constructs the bad_function_call object
constructor (public member function)


bad_function_call() noexcept;

Constructs a new instance of std::bad_function_call.



Inherited from std::exception

Member functions

destructor destroys the exception object
             (virtual public member function of std::exception)

what returns an explanatory string
             (virtual public member function of std::exception)


// Run this code

  #include <iostream>
  #include <functional>

  int main()
      std::function<int()> f = nullptr;
      try {
      } catch(const std::bad_function_call& e) {
          std::cout << e.what() << '\n';

Possible output:

  bad function call

See also

function wraps callable object of any type with specified function call signature
         (class template)