2012-12-06 33 views
6

Tôi cố gắng sử dụng hàm std :: this_thread :: sleep_for() nhưng gặp lỗi
error: 'std::this_thread' has not been declared.
Bao gồm cờ _GLIBCXX_USE_NANOSLEEP.
Điều gì khác cần thiết để buộc nó hoạt động?
MinGW ==> phiên bản gcc 4.7.2 (GCC)lỗi: 'std :: this_thread' chưa được khai báo

SSCCE:

#include<thread> 

int main() { 
    std::this_thread::sleep_for(std::chrono::seconds(3)); 
} 

dòng lệnh:

g++ -D_GLIBCXX_USE_NANOSLEEP -std=gnu++0x ssce.cpp -o ssce.exe 

kết quả của biên soạn:

ssce.cpp: In function 'int main()': 
ssce.cpp:4:8: error: 'std::this_thread' has not been declared 
+2

Bạn có '#include '? – kennytm

+0

Bản sao của http://stackoverflow.com/questions/4438084/stdthis-threadsleep-for-and-gcc? –

+0

xin lỗi, vâng, tôi sử dụng bao gồm – OlegG

Trả lời

7

Sử dụng MinGW với chủ đề POSIX, Luke.

http://sourceforge.net/projects/mingwbuilds/

+0

cảm ơn bạn! Trình biên dịch được MinGW tạo ra sự khác biệt. – asgs

+0

Tôi không hiểu câu trả lời này chút nào. Người hỏi là * đã * bằng cách sử dụng MinGW. Đó là MinGW đang gây ra vấn đề này ngay từ đầu. Ngoài ra, đó không phải là liên kết đến MinGW. Nó phải là: https://sourceforge.net/projects/mingw/. – Boann

Các vấn đề liên quan