Prz*_*ski 4 c++ boost string-view c++17
我正在使用一个 boost 库,它使用boost::string_view. 但是,我想std::string_view在我的代码中使用。
问:这两者之间转换的最佳方式是什么?
目前我正在使用:
void foo(std::string_view sv) {
# ...
}
void foo(boost::string_view bsv) {
foo(std::string(bsv));
}
Run Code Online (Sandbox Code Playgroud)
但这会产生不必要的字符串。
单程:
void foo(std::string_view sv);
inline void foo(boost::string_view bsv) {
foo(std::string_view(bsv.data(), bsv.size()));
}
Run Code Online (Sandbox Code Playgroud)
确保将长度传递给std::string_view否则它会不必要地调用Traits::length( std::strlen)。
| 归档时间: |
|
| 查看次数: |
5462 次 |
| 最近记录: |