C++ 17将有一个Callable
概念,我想知道与其类型的确切区别std::is_function
是什么true
.它们是等价的吗?是另一个的超集吗?
C++ 17将有一个
Callable
概念
它是自C++ 11以来的标准.
它们是等价的吗?是另一个的超集吗?
不,事实上,他们是完全不相交的.Callable
仅适用于对象类型,并包括从指针到成员到具有重载operator()
到类型的类型的所有内容,其中隐式转换为函数指针本身的函数指针.
is_function
仅适用于实际函数类型,根据定义,它们不是对象类型.