Aşağıdaki kodu derlerken:Hata MacOSX Lion gcc 4.6.1 C++ 0x diş kodu derlerken
#include <iostream>
#include <thread>
using namespace std;
void hello()
{
cout << "Hello World!" << endl;
}
int main()
{
cout << "starting" << endl;
thread t(hello);
t.join();
cout << "ending" << endl;
return 0;
}
kullanarak:
: aşağıdaki hatayı alıyorum$ g++-4.6.1 -std=c++0x -pthread threading.cpp
threading.cc: In function ‘int main()’:
threading.cc:13:2: error: ‘thread’ was not declared in this scope
threading.cc:13:9: error: expected ‘;’ before ‘t’
threading.cc:14:2: error: ‘t’ was not declared in this scope
Bu, MacOSX Lion üzerinde özel olarak oluşturulmuş gcc 4.6.1 üzerindedir. Gcc 4.6 için geçerli olan tüm diğer C++ 0x özellikleri, bir çekicilik gibi çalışır. Bu MacOSX'e özgü bir hata mı?
için neler olabileceğini bilmiyorum, ama asla kullanmamayı biliyorum; Bunun yerine ben derleyici seçenekleri – sehe
sonunda (!) '-lpthread' kullanmak Ben hala std :: tr1 'olabilir. 4.6 yayınlandığında C++ 11 resmi değildi. –
Burada yanılmış olabilirim, ancak posix iş parçacığı içinde değil mi? Bu projeniz tarafından gerekli değildir. – Alan