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