gpt4 book ai didi

c++ - 为什么 boost::filesystem::path 和 std::filesystem::path 的路径转义字符不同?

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

boost::filesystem::path使用 &转义路径字符串中的引号,see demo :

std::cout << boost::filesystem::path("/R&D/Project \"boost\"") << std::endl;

打印 "/R&&D/Project &"boost&"" .但是,对于 std::filesystem::path I see this :

Performs stream input or output on the path p. std::quoted is used so that spaces are not truncation when later read by stream input operator.

这里来自 std::quoted :

escape - the character to use as the escape character, defaults to \

由此我可以看出 std::filesystem::path将使用 \而不是 & .

这是正确的吗?如果是,为什么委员会决定改变这种行为?

奖励问题:是否有任何 std::filesystem::path 的实现?可用的?似乎最新的 GCC 和 clang 都没有提供 <filesystem>标题。

最佳答案

Boost::Filesystem 相当古老,早于 C++14 的 quoted。标准内部一致是完全合理的。关注 Boost 只是次要问题。

关于c++ - 为什么 boost::filesystem::path 和 std::filesystem::path 的路径转义字符不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40741446/

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