- functional[meta header]
- std[meta namespace]
- function[meta class]
- function[meta id-type]
- cpp11[meta cpp]
explicit operator bool() const noexcept;
関数呼び出しが可能か調べる。
呼び出す関数を持っていればtrue
、そうでなければfalse
を返す。
#include <iostream>
#include <functional>
int ident(int x) { return x; }
int main()
{
std::function<int(int)> f = ident;
if (f) {
std::cout << "not empty" << std::endl;
}
else {
std::cout << "empty" << std::endl;
}
}
not empty
- C++11
- Clang: 3.0 [mark verified]
- GCC: 4.3.6 [mark verified]
- Visual C++: ??