我正在 Windows 10 上使用 Visual Studio 2015 开发一个 C 程序。当我包含 XAudio2.h 时,我收到了几百个编译器错误,我相信这些错误都源于此:
Error C2485 'uuid': unrecognized extended attribute
是否有办法让 XAudio2 与 C 应用程序一起工作?
最佳答案
简而言之,最新版本的 XAudio2(Windows 8.x SDK 中的 XAudio 2.8、Windows 10 SDK 中的 XAudio 2.9)不支持 C,仅支持 C++。
来自 deprecated DirectX SDK 的旧版 XAudio 2.7使用 C 构建,尽管它基本上没有从 C 进行测试。事实上,在很长一段时间内,C 而不是 C++ 的 DirectX 使用尚未真正经过测试或得到很好的支持。用于生成 COM 接口(interface) header 的 MIDL 编译器仍然具有许多与 C 相关的支持宏和元素,这些宏和元素来自 C 的使用是一等公民时的情况,但是这些东西绝对处于“按原样”状态,几乎没有得到任何帮助。测试覆盖率。
您可以继续让自己感到沮丧,您可以将所有 C++ 代码包装在您自己的 C 可调用包装器中,或者直接开始使用 C++。
关于c - 在 C 中使用 XAudio2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46181334/