C2011 “timespec”:“struct”类型重定义

本文转自:https://blog.csdn.net/u010536615/article/details/70231441

解决方法:
在

#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
某处它附近开始的时候,你是好去进一步阅读

猜你喜欢

转载自blog.csdn.net/user11223344abc/article/details/80536809
今日推荐