读书人

吐槽一下子 VS2012,支持 C++ 2011 太弱

发布时间: 2013-06-19 10:26:40 作者: rapoo

吐槽一下 VS2012,支持 C++ 2011 太弱了。
template<typename T> T aa(T &x,T &y)
{
std::cout<<"aa start...."<<endl;
x += x;
y += y;

//睡眠指定豪秒数
std::this_thread::sleep_for(std::chrono::milliseconds(5000));
std::cout<<"aa end...."<<endl;
return x + y;
}

const std::string aaa(std::string &x,std::string &y)
{
std::cout<<"aa start...."<<endl;
x += x;
y += y;

//睡眠指定豪秒数
std::this_thread::sleep_for(std::chrono::milliseconds(5000));
std::cout<<"aa end...."<<endl;
return x + y;
}

int main(int argc, char* argv[])
{
using namespace std::placeholders; //for _1, _2, _3...

std::string ss = "x",sss = "y";
ss += "d";
auto handle = std::async(std::launch::async,aa<std::string>,std::ref(ss),sss);
//这句编译失败,上面那句能成功,我必须要吐槽了。
auto handle_1 = std::async(aaa,ss,sss);
}
[解决办法]
嗯,不错,感谢楼主分享,结贴吧
[解决办法]
把 aa 函数返回值的 const 去掉试试。
[解决办法]
顶一下,还没玩过2012
[解决办法]
这应该是编译器对一些语法定义的实现要求
[解决办法]
aaa返回的const去掉。。

读书人网 >VC/MFC

热点推荐