我正在尝试在 Windows 上使用 MSVC 将我正在构建的 Qt 库静态链接到 Botan,并且收到以下错误。
..\..\3rdparty\temp\botan-msvc\build\include\botan/secmem.h(129) : error C2589: '(' : illegal token on right side of '::'
..\..\3rdparty\temp\botan-msvc\build\include\botan/secmem.h(128) : while compiling class template member function 'void Botan::MemoryRegion<T>::copy(const T [],size_t)'
with
[
T=Botan::byte
]
..\..\3rdparty\temp\botan-msvc\build\include\botan/buf_comp.h(41) : see reference to class template instantiation 'Botan::MemoryRegion<T>' being compiled
with
[
T=Botan::byte
]
..\..\3rdparty\temp\botan-msvc\build\include\botan/secmem.h(129) : error C2059: syntax error : '::'
MinGW 不会发生这种情况。当我注释掉所有与 Botan 相关的代码时也会发生这种情况。这是什么意思,我该如何解决 - 为什么 MinGW 不会发生?