解决方法让代码在MSVC ++ 2010工作,由于“类型名称是不允许的”(Workaround to

2019-09-22 11:58发布

我想实现一个手指检测,哪一个环节被赋予在这里 。 难道我要通过MSVC2010代码,它给我的错误,如图,如下图所示。 有人能告诉我,为什么下面的代码给我的错误? 这是关系到这些下列问题; 1 , 2 , 3 ? 有没有一种可能的解决方法? 我已经包含:

#include <cstdint> 
#include <stdint.h>

我也尝试:

unsigned short depth = (unsigned short) (v[2] * 1000.0f); // hand depth
unsigned short near = (unsigned short) (depth - 100); // near clipping plane
unsigned short far = (unsigned short) (depth + 100); // far clipping plane

但没有奏效。

谢谢,

食品

Answer 1:

其原因是, nearfar已经#define ð其他地方的东西。 这是典型的,如果你已经包括windows.h ,其中包括windef.h与下面的宏:

#define far
#define near
#if (!defined(_MAC)) && ((_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED))
#define pascal __stdcall
#else
#define pascal
#endif

请尝试更改名字弄成plane_nearplane_far ,它会工作。



文章来源: Workaround to get codes to work in MSVC++ 2010 due to “Type name is not allowed”