我试图编译一些遗留的C ++项目并遇到错误,我无法弄清楚发生了什么。
错误在这一行(18)中:
typedef uint16_t (*vfunc)();
GCC输出:
vflow.h:18: warning: ISO C++ forbids declaration of 'uint16_t' with no type
vflow.h:18: error: typedef 'uint16_t' is initialized (use decltype instead)
vflow.h:18: error: 'vfunc' was not declared in this scope
我的C ++比我的英语差!请帮忙。 =)
答案 0 :(得分:6)
将我的评论转移到答案:
您是否事先添加了
<stdint.h>
或<cstdint>
,以便定义uint16_t
?看起来您还没有定义uint16_t
。
从回答来看,这是你的问题。