Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 为什么std::bind的返回类型未指定?_C++_C++11_Boost_Bind - Fatal编程技术网

C++ 为什么std::bind的返回类型未指定?

C++ 为什么std::bind的返回类型未指定?,c++,c++11,boost,bind,C++,C++11,Boost,Bind,未指定boost::bind和nowstd::bind的返回类型 为什么未指定boost::bind和现在的std::bind的返回类型?为什么它不像boost::function和std::function 我意识到其目的是通过类型推断来引用返回类型,但这并不能回答为什么std::bind是特殊的 如果这只是委员会的一时兴起,那么好吧,没什么好说的了,但是是否有技术原因说明为std::bind指定一个返回类型是非常麻烦的,或者不指定它允许更有效的实现?好吧,首先,不只有一个返回类型。根据传

未指定
boost::bind
和now
std::bind
的返回类型

为什么未指定
boost::bind
和现在的
std::bind
的返回类型?为什么它不像
boost::function
std::function

我意识到其目的是通过类型推断来引用返回类型,但这并不能回答为什么
std::bind
是特殊的


如果这只是委员会的一时兴起,那么好吧,没什么好说的了,但是是否有技术原因说明为
std::bind
指定一个返回类型是非常麻烦的,或者不指定它允许更有效的实现?

好吧,首先,不只有一个返回类型。根据传入的参数的类型,它有很大的不同


C++标准对实现者来说有很大的灵活性,即如何使用不同的封闭对象类型(使用重载和SFIEAE)来映射不同的情况。

< P>,对于初学者来说,不只是一个返回类型。根据传入的参数的类型,它有很大的不同


C++标准对实现者来说是非常灵活的(如何使用超载和SFIEAE),并映射到不同的闭包对象类型。

< P>它不是Booo::函数或STD::函数,因为它们都执行类型擦除,这可能需要内存分配(绑定不)。通常不能内联函数调用。

它不是boost::function或std::function,因为它们都执行类型擦除,这可能需要内存分配(bind不执行),并且通常不能内联函数调用。

我一直假设返回类型类似于
绑定类型。
,但我从来没有检查过以确认这一点。我一直认为返回类型类似于绑定类型,但我从来没有检查过以确认这一点。