如何通过值或常量引用传递std::string_view

11
通常情况下,像这样的函数参数会使用 string_view
void fval(std::string_view sv);
void fcref(std::string_view const &sv);

哪个更好?

const 引用是 8 字节,而 string_view 通常是其两倍,例如 16 字节。

然而,如果没有内联或优化,则 const 引用可能有两个间接引用 - 一个用于引用,第二个用于指针内部。

STL 是如何做到的呢?


有趣的是,为什么要点踩而不留言呢?我至少可以详细阐述一个小时关于两种方法的内容。 - Nick
一下跌,三上涨。(我还不会称之为趋势,但是...);-) - Scheff's Cat
1个回答

8

4
我正要问“我们”是谁 :) 谢谢,马歇尔! - Nick
2
为什么会这样可能需要一些解释 :) - Joel Bodenmann

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接