标题几乎描述了它,我正在尝试使用以下代码:
#include <thread>
#include <iostream>
using namespace std;
void task_1(){
cout << "Thread 1" << endl;
}
int main(){
thread task(task_1);
task.join();
return 1;
}
但它会产生编译错误
D:\ dev \ cpp \ trash \ thread.cpp | 11 |错误:'thread'未声明此范围|
我正在使用Code:Blocks 10.05和GNU GCC编译器,选项-std = c ++ 0x
代码:最近才下载了块,所以我猜想一切都应该是最新的。
答案 0 :(得分:2)
您显示的错误是编译器错误,因此链接器选项不会产生任何影响。您需要确保正确配置编译器以支持std::thread
等C ++ 11功能。使用编译器(而不是链接器)选项-std=c++0x
或-std=c++11
可能就是必要的。
答案 1 :(得分:0)
你应该知道C ++ 11支持在GCC中仍然是非常实验性的。支持即将到来,但仍存在一些回归。见http://gcc.gnu.org/