我在 Visual Studio 中设置了一个项目来创建一个 .dll。我在项目中包含了一个使用关键字“interface”的外部库。这给了我以下错误:
错误 C2146:语法错误:缺少“;” 在标识符“INuiAudioBeam”之前
这些是发生错误的代码行:
#ifndef __INuiAudioBeam_FWD_DEFINED__
#define __INuiAudioBeam_FWD_DEFINED__
typedef interface INuiAudioBeam INuiAudioBeam; //Error on this line
#endif
上面的代码是我包含的外部库中头文件的一部分。在不包含库头文件的情况下编译时项目成功构建,没有任何错误(注意:链接库不会导致任何问题)。
解决方案是什么?是因为我有一个用于创建 dll 的外部库吗?我应该创建一个 .lib 而不是 dll 吗?