1

我正在尝试将 MongoDB c++ 驱动程序编译到我的项目中,但遇到了一个有趣的错误。

在 util/text.h 中,您可以找到以下代码:

/* like toWideString but UNICODE macro sensitive */
# if !defined(_UNICODE)
#error temp error 
    inline std::string toNativeString(const char *s) { return s; }
# else
    inline std::wstring toNativeString(const char *s) { return toWideString(s); }
# endif

看起来你应该能够在没有 _UNICODE 定义的情况下编译它,但是这个看似任意的行 #error temp error 会导致失败。在 Github 上,文件的整个生命周期似乎都是这种情况。有谁知道删除它是否安全?

不幸的是,我不能只用 unicode 编译这个项目,因为项目中也有许多 unicode 不兼容的源。

干杯

凯尔

4

0 回答 0