我已经写了一个小程序,了解期货如何在C++ 0x中工作。当运行代码时,我得到一个错误,如“错误:'printEn'未在此范围内声明”。我无法理解有什么问题is..Kindly指出什么在这里,我做错了,如果可能的话写在同一正确的代码..C++中的期货问题0x
#include <future>
#include <iostream>
using namespace std;
int printFn()
{
for(int i = 0; i < 100; i++)
{
cout << "thread " << i << endl;
}
return 1;
}
int main()
{
future<int> the_answer2=async(printEn);
future<int> the_answer1=async(printEn);
return 0;
}
编辑:
作出更改后printFn运行程序时,我收到错误消息“找不到版本GLIBCXX_3.4.14”(由./a.out需要)“。这是什么意思?
关于GLIBCXX评论,版本控制的常见用法是在每个新的共享库版本中引入一些新的符号,如“GLIBCXX_3.4.14”。通常这些版本符号是预先保存的,直到某种向后兼容性丢失。这个想法是,图书馆的用户可以有一个相应的未解决的符号,在链接时连线。通过这种方式,库的用户不需要运送库,只要依赖于链接到其他(可能更新)的库,只要它具有这个符号即可。 C++运行时是我见过的最常见的地方。 – tgoodhart 2011-06-18 20:59:14