通过得到string_view
在 C++17 中,我们得到了传递两者的廉价方法std::string
and char*
不拥有字符串所有权并避免制作临时副本的函数。通过使用std::string
按值传递和std::move
我们可以显式且快速地传递右值和左值引用的字符串所有权。
我的问题是:使用有什么好处吗const std::string&
作为新 C++ 标准中的任何函数参数?
Yes.
问题在于std::string_view
是它不记得它是否指向以空结尾的字符串。
如果您正在为使用 null 终止字符串的 C api 编写包装器,则必须不断复制您的std::string_view
s into std::string
确保您有空终止符。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)