Как передать std :: string_view по значению или по константной ссылке - PullRequest
0 голосов
/ 15 октября 2019

Обычно string_view используется для параметров функции, таких как:

void fval(std::string_view sv);
void fcref(std::string_view const &sv);

Что лучше?

константное значение равно 8 байтов, а string_view обычно вдвое больше, например, 16байт.

Однако, если не указывать или не оптимизировать, ссылка на const может иметь две косвенные ссылки - одну для ссылки, вторую для указателя внутри.

Как это делает STL?

1 Ответ

1 голос
/ 15 октября 2019

Обычно мы передаем string_view s по значению.

Примеры из черновика C ++ 20:

...