string_view作为const引用的参数

问题描述 投票:0回答:1

我见过带有以下签名的std :: string_view代码:

void foo(std::string_view const &); // 1
void foo(std::string_view const);   // 2

哪个更正确?哪个更有效? (我认为两者的答案是相同的)

c++ c++17
1个回答
0
投票

std::string_view充当指向std::stringchar* C字符串的指针。它包含一个指针和一个长度。无需通过引用传递它。始终使用一个值并复制它。

永远不要将其存储在任何地方,或者如果您记得它是指针,而不是实际的东西。

© www.soinside.com 2019 - 2024. All rights reserved.