使用 SDK,其头文件使用不命名类型的类型定义
Using an SDK, their header files are using typedefs that do not name a type
我正在使用SDK进行指纹扫描仪,并且已将其所有头文件添加到我的项目中。在头文件中,他们使用了很多似乎不起作用的 typedef。我正在使用Eclipse,想知道这是否是问题所在。
例如,在以下方面:
#ifdef WIN32
typedef __int8 SecuAPI_SINT8;
typedef __int16 SecuAPI_SINT16;
typedef int SecuAPI_SINT32;
typedef __int64 SecuAPI_SINT64;
typedef BYTE SecuAPI_UINT8 ;
typedef WORD SecuAPI_UINT16 ;
typedef DWORD SecuAPI_UINT32;
字节、字、双字抛出错误不命名类型。
其他人似乎还可以。我尝试添加winDef.h和windows.h标头,但这似乎不起作用。
代码再往下走
typedef BOOL SecuAPI_BOOL;
typedef CHAR SecuAPI_CHAR;
typedef LPSTR SecuAPI_CHAR_PTR;
同时抛出相同的错误。
其他类型,如char,short,int等似乎有效。
编辑:我是 C 的新手,所以我不知道为什么,但我将它们的头文件复制并粘贴到新的头文件中(因为它不允许我编辑他们的头文件),BOOL, BYTE, WORD
类型现在可以了,但__int8, __int16, etc.
不起作用。我添加了<stdint.h>
,现在一切都在工作。
谢谢大家!
BOOL
、CHAR
、LPSTR
和类似的全大写类型(通常)是Microsoft定义的类型。文档指出了需要哪些标头才能获得正确的定义。
相关文章:
- 有没有一种方法可以通过"typedef"为重新定义的基本类型定义特征和强制转换运算符
- 强枚举类型定义:Clang Bug 还是 C++11 标准不确定性?
- 列表参数的类型定义
- 使用模板化的键类型定义 std::map,该键类型基于作为参数接收的函数
- 关于 C++ 中的函数类型定义
- C++(和 ROS) - 包含与前向声明引用,设置默认值和类型定义
- 将使用/类型定义限制为类范围
- 模板类型定义?
- C++:模板类的类型定义
- 如何对命名空间限定类型进行类型定义?
- 此递归模板类型定义是否有效C++?
- 具有调整对齐方式的类型定义
- C++从抽象类型定义类成员
- 用于C++代码的 API 监视器类型定义 (XML)
- 如何将result_of与函数类型定义一起使用
- 在C++的适当类型定义位置
- 如何根据模板类型定义浮点常量?
- 如何为缺少预定义运算符而不扩展命名空间"std"的标准类型定义运算符>> (istream &, ...)?
- 参数化类的别名(或类型定义)内部类
- 如果我想从类型"T"定义元素的容器(来自 STL),那么"T"必须使用默认构造函数?