当前位置: 代码迷 >> 综合 >> #include atomic 引入的错误
  详细解决方案

#include atomic 引入的错误

热度:55   发布时间:2023-12-15 23:01:20.0

要不要死,,被windows虐死了

1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(430): error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(430): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(482): error C2146: 语法错误: 缺少“;”(在标识符“LPTCH”的前面)
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(482): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(482): error C2378: “LPCH”: 重定义;符号不能由 typedef 重载
1>          c:\program files (x86)\windows kits\8.0\include\um\winnt.h(430) : 参见“LPCH”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(497): error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(497): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(498): error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(498): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4860): error C2733: “_bittest”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(437) : 参见“_bittest”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4866): error C2733: “_bittestandcomplement”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(439) : 参见“_bittestandcomplement”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4872): error C2733: “_bittestandset”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(443) : 参见“_bittestandset”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4878): error C2733: “_bittestandreset”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(441) : 参见“_bittestandreset”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4884): error C2733: “_interlockedbittestandset”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(455) : 参见“_interlockedbittestandset”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4890): error C2733: “_interlockedbittestandreset”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(450) : 参见“_interlockedbittestandreset”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4969): error C2733: “_InterlockedExchange16”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(189) : 参见“_InterlockedExchange16”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4974): warning C4391: “SHORT _InterlockedExchange16(volatile SHORT *,SHORT)”: 不正确的内部函数返回类型,应为“short”
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4990): error C2733: “_InterlockedAnd16”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(129) : 参见“_InterlockedAnd16”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(4996): error C2733: “_InterlockedCompareExchange16”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(152) : 参见“_InterlockedCompareExchange16”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(5003): error C2733: “_InterlockedOr16”: 不允许重载函数的第二个 C 链接
1>          g:\program files (x86)\microsoft visual studio 11.0\vc\include\intrin.h(233) : 参见“_InterlockedOr16”的声明
1>c:\program files (x86)\windows kits\8.0\include\um\winnt.h(5009): error C2733: “_InterlockedIncrement16”: 不允许重载函数的第二个 C 链接
。。。。。。。。。。。。。。。。

查了半天,,,要不要那么大的坑,,在引入windows的头文件时,出现此问题时一般是头文件先后顺序,,不找这可恶的宏了,,尼玛



之前后出上述错误。。就那么简单。。。


调整顺序为

#include <WinSock2.h>
#include <atomic>
问题解决

  相关解决方案