我正在尝试在 Matlab 中使用 mex 编译一个库。我能够部分编译该内容,但是在最后一个文件中,mex给出了有关两行的错误:
typedef __int64 LONG64;
typedef __int64 long64;
错误说:
__int64
不会命名类型typedef __int64 LONG64;
这只是C++代码的问题吗?我根本不熟悉这种语言,也不知道错误是从哪里来的。可以修复吗?
__int64
是一个同义词,仅适用于 32 位和 64 位编译器Microsoft Visual C++。
您可以使用long long
而不是__int64
typedef long long LONG64;
typedef long long long64;
或使用cstdint
:
#include <cstdint>
typedef int64_t LONG64;
typedef int64_t long64;