错误: 包含 <Kinect.h> 时未声明"_Out_"

error: '_Out_' has not been declared when including <Kinect.h>

本文关键字:未声明 Out gt Kinect 包含 lt 错误      更新时间:2023-10-16

我正在使用CLion,我需要从Kinect获取一些数据,但是当涉及到#include <Kinect.h>时,我收到以下错误:

In file included from C:/PROGRA~1/MICROS~2/Kinect/V2D305~1.0_1/inc/Kinect.h:547,
from C:UsersfreddCLionProjects3D_avatarmain.cpp:19:
C:/PROGRA~1/MICROS~2/Kinect/V2D305~1.0_1/inc/Kinect.INPC.h:109:13: error: '_Out_' has not been declared
_Out_  WAITABLE_HANDLE *waitableHandle) = 0;
^~~~~

以及无穷无尽的类似错误列表。我想我错过了某种定义这种数据格式的库,但我真的不知道(如果这是问题所在(是哪一个。我已经在互联网上搜索了大约 3 个小时,没有任何结果。 如何解决错误? 另外,有没有更好的方法可以让 Kinect 与 CLion 一起工作?

我已经设法理解发生了什么:MinGW无法编译SAL注释,所以我不得不将编译器切换到与Visual Studio捆绑在一起的MSVC。此外,我不得不将 MatLab 与我的项目链接起来,因为没有库(除了libfreenect2,这让我发疯了(可以处理 Kinect v2。