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)主要用於字符串。 '路徑'不是字符串。 –