| (since C++11) |
Checks whether *this
stores a callable function target, i.e. is not empty.
Parameters
(none).
Return value
true
if *this
stores a callable function target, false
otherwise.
Exceptions
noexcept
specification: noexcept
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | #include <functional> #include <iostream> void sampleFunction() { std::cout << "This is the sample function!\n" ; } void checkFunc( std::function< void ()> &func ) { // Use operator bool to determine if callable target is available. if ( func ) { std::cout << "Function is not empty! Calling function.\n" ; func(); } else { std::cout << "Function is empty. Nothing to do.\n" ; } } int main() { std::function< void ()> f1; std::function< void ()> f2( sampleFunction ); std::cout << "f1: " ; checkFunc( f1 ); std::cout << "f2: " ; checkFunc( f2 ); } |
Output:
1 2 3 | f1: Function is empty. Nothing to do . f2: Function is not empty! Calling function. This is the sample function! |
Please login to continue.