--更新示例--
这是一些代码:
int retInt(int a) { return a; }
void randomFunction()
{
int a = 3;
auto future = async([&]{ return retInt(a); });
const auto ret = future.get();
}
VS2012 intellisense 告诉我'ret'是一个const < error-type >
并且不会让我编译,给我一个输出消息:
[无法从 'void' 推断出 'const auto' 的类型]
例如,如果我将 'ret' 从const auto
to更改const int
并指定一个实际类型,一切编译都很好,但我想知道为什么自动版本不起作用,以及是否会有某种可能的代码更改来制作一个版本自动编译。
有任何想法吗?
笔记:
改变
自动未来 = async([&]{ return retInt(a); });
到
自动未来 = async([&] ()->int{ return retInt(a); });
产生相同的结果