0
问题1:我想先删除boost::filesyetem::path
中的“file://
”部分,而不先转换为std::string
。是否可以使用boost::algorithm::replace_first
算法来编写此代码?在boost :: filesystem :: path中使用boost :: algorithm
我试过以下,但它不能编译。
std::string s("file://"), empty("");
boost::filesystem::path path = oldPath.generic_string();
boost::algorithm::replace_first(path.generic_string(), s, empty);
编译错误:
cannot convert parameter 2 from 'std::_String_const_iterator<std::_String_val<std::_Simple_types<char>>>' to 'std::_String_iterator<std::_String_val<std::_Simple_types<char>>>'
问题2:是boost::algorithm
总比其他当应用于字符串有什么用?
谢谢@NicolBolas。它非常有意义。你能回答问题的第二部分吗? – hhbilly
@ user1626720:这个问题定义得太差,无法回答。算法对于你使用它们的任何东西都很有用。然而,顾名思义,[*字符串算法*(这是'replace_first'的来源]](http://www.boost.org/doc/libs/1_52_0/doc/html/string_algo.html)主要用于字符串。 '路径'不是字符串。 –