C2011 “timespec”:“struct”類型重定義

如題,pthread.h中報錯:C2011 “timespec”:“struct”類型重定義
解決方法:
#if !defined( PTHREAD_H )
#define PTHREAD_H
下面加上
#define HAVE_STRUCT_TIMESPEC
原文地址:http://blog.csdn.net/shujun19941226/article/details/51526506

在C++多線程代碼的時候的錯誤,google之,然後找到了解決辦法。
原始答案如下。
Timespec :struct type Error c2011
threads的-win32的(我假設你正在使用),可在內部包括time.h中(time.h中通常也被其他的庫/頭文件包含) -和time.h中已經聲明瞭的timespec(也,它兼容的方式這樣做與pthreads的) -但與pthreads-win32的的pthreads.h中沒有有效的包括此情況下。pthreads的嘗試,因爲它需要在內部聲明,但因爲它可能就不需要整個time.h中,它會嘗試聲明只的timespec如果可能的話。不過,你可以簡單地添加

#define HAVE_STRUCT_TIMESPEC
這將告訴pthreads的,Win32頭,你已經有一個適當的timespec,並會讓你的代碼編譯正常。

另外,如果你使用pthreads的廣泛應用,你可能要編輯的頭文件本身-僅僅是增加的#define HAVE_STRUCT_TIMESPEC某處它附近開始的時候,你是好去進一步閱讀:這裏寫鏈接內容

發佈了95 篇原創文章 · 獲贊 40 · 訪問量 43萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章