gpt4 book ai didi

c++ - boost bcp --namespace 到底做了什么?

转载 作者:太空狗 更新时间:2023-10-29 21:23:58 25 4
gpt4 key购买 nike

我的印象是带有命名空间选项的 boost bcp 旨在重命名任何列出的模块的包含和定义。在运行该工具并检查输出后,它似乎并没有这样做。如果它们仍然存在,我该如何重新分发这些 #include <boost/*>并期望最终用户的 #include <boost/*>不会引起版本冲突?它只是用 namespace 闭包包装它们吗?

我使用了以下 bcp 命令:

.\boost_1_53_0\dist\bin\bcp.exe --boost=boost_1_53_0 --namespace=myboost --namespace-alias smart_ptr filesystem array.hpp container move ptr_container algorithm/string.hpp tokenizer.hpp thread chrono atomic foreach.hpp build myboost

快速 grep 一个文件:

[boost]grep -e "boost/" algorithm\string.hpp
grep -e "boost/" algorithm\string.hpp
#include <boost/algorithm/string/std_containers_traits.hpp>
#include <boost/algorithm/string/trim.hpp>
#include <boost/algorithm/string/case_conv.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/find.hpp>
#include <boost/algorithm/string/split.hpp>
#include <boost/algorithm/string/join.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/algorithm/string/erase.hpp>
#include <boost/algorithm/string/classification.hpp>
#include <boost/algorithm/string/find_iterator.hpp>

我很确定这是带有命名空间选项的 bcp 工具的用例,但是,我显然误解了一些常见的 C++ 概念/用法,对吗?或者,也许我没有正确使用该工具?

提前感谢您的任何见解。

最佳答案

bcp --namespace=myboost --namespace-alias regex config build /foo

Copies the full regex lib (in libs/regex) plus the config lib (libs/config) and the build system (tools/build) to /foo including all the dependencies. Also renames the boost namespace to myboost and changes the filenames of binary libraries to begin with the prefix "myboost" rather than "boost". The --namespace-alias option makes namespace boost an alias of the new name.

只有二进制文件会被重命名(libboost_regex.so 将被重命名为 libmyboost_regex.so),头文件不会。此外,命名空间 boost 将替换为 myboost(并且 boost 将成为 myboost 的别名)。

关于c++ - boost bcp --namespace 到底做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17101921/

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