使用 Vulkan 内存分配器出现大量错误,“'(': '::' 右侧的非法标记”

Getting numerous errors with Vulkan Memory Allocator, "'(': illegal token on right side of '::'"

我遇到了这个问题,第一次尝试将 Vulkan 内存分配器 (VMA) 集成到我的程序中时出现了,这非常令人沮丧,因为我在 VMA 文档中找不到这样的错误。查看 vk_mem_alloc.h 文件后,我发现问题是因为 vk_mem_alloc.h 使用 std::maxstd::min 与我也在使用的 windows.h 有冲突。

修复非常简单,您只需在 #include <windows.h> 之前调用 #include "vk_mem_alloc.h",但像我这样的业余爱好者很容易挂断电话,所以我想我在这里为其他试图学习这个令人生畏的人写下我的困难API。