gpt4 book ai didi

c++ - `std::basic_string` 和 `std::__1::basic_string` 之间有什么区别?

转载 作者:行者123 更新时间:2023-12-03 08:29:42 29 4
gpt4 key购买 nike

ninja (版本:1.9.0)输出:

mergetree_test.cpp:(.text+0x19f): undefined reference to `DB::executeQuery(std::string const&, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool)'

nm -A mergetree_test.o | grep executeQuery | c++filt输出:

mergetree_test.o:                 U DB::executeQuery(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool)

但是我从链接库中得到了输出,其中 executeQuery使用相同的方法定义。

libdbms.a:executeQuery.cpp.o:0000000000008750 T DB::executeQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool)

__1 是什么意思?意思是 ?我该如何解决这个问题?

最佳答案

我怀疑您正在尝试组合使用 libc++ 和 libstdc++ 编译的库。

libc++ 将(几乎)所有符号放入 std::_1:: 中,而 libstdc++ 将其符号放入 std::

关于c++ - `std::basic_string` 和 `std::__1::basic_string` 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65517742/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com