Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::bad_function_call(3)     C++ Standard Libary    std::bad_function_call(3)

NAME
       std::bad_function_call -	std::bad_function_call

Synopsis
	  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
	  constructor	constructs a new bad_function_call object
			(public	member function)
	  operator=	replaces the bad_function_call object
			(public	member function)
	  what		returns	the explanatory	string
			(public	member function)

       std::bad_function_call::bad_function_call

	  bad_function_call()	noexcept;				   (1)
       (since C++11)
	  bad_function_call( const bad_function_call& other  )	noexcept;  (2)
       (since C++11)

	  Constructs a new bad_function_call object with an implementation-de-
       fined
	  null-terminated byte string which is accessible through what().

	  1) Default constructor.
	  2) Copy constructor. If *this	and other both have dynamic type
	  std::bad_function_call then std::strcmp(what(), other.what())	== 0.

Parameters
	  other	- another exception object to copy

       std::bad_function_call::operator=

	  bad_function_call&   operator=(  const  bad_function_call&  other  )
       (since C++11)
	  noexcept;

	  Assigns the contents with those of other. If *this  and  other  both
       have dynamic type
	  std::bad_function_call  then	std::strcmp(what(), other.what()) == 0
       after assignment.

Parameters
	  other	- another exception object to assign with

Return value
	  *this

       std::bad_function_call::what

	  virtual const	char* what() const noexcept;  (since C++11)

	  Returns the explanatory string.

Parameters
	  (none)

Return value
	  Pointer to a null-terminated string  with  explanatory  information.
       The string is
	  suitable  for	 conversion and	display	as a std::wstring. The pointer
       is guaranteed to
	  be valid at least until the exception	object from which  it  is  ob-
       tained is destroyed,
	  or until a non-const member function (e.g. copy assignment operator)
       on the
	  exception object is called.

Notes
	  Implementations are allowed but not required to override what().

       Inherited from std::exception

Member functions
	  destructor   destroys	the exception object
	  [virtual]    (virtual	public member function of std::exception)
	  what	       returns an explanatory string
	  [virtual]    (virtual	public member function of std::exception)

Example
       // Run this code

	#include <iostream>
	#include <functional>

	int main()
	{
	    std::function<int()> f = nullptr;
	    try	{
		f();
	    } 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 copy constructible type with
       specified
	  (C++11)  function call signature
		   (class template)

http://cppreference.com		  2022.07.31	     std::bad_function_call(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::bad_function_call&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help