使用 `std::string_view` 参数并稍后将它们转换为 `std::string`?

问题描述

代码审查期间,我反复在其他人的代码中发现以下模式:

void writeFile(std::string_view path)
{
    auto of = std::ofstream(std::string{path});
    ...
}

据我所知,在函数签名中使用 string_view 可以避免字符串被复制。在签名中使用 string_view 然后在下一行将其转换为 std::string (从而显式制作副本)有什么意义吗?使用 std::string 参数是不是完全一样?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)