Почему std :: basic_string_view поддерживает только константные указатели? - PullRequest
0 голосов
/ 30 октября 2019

Согласно описанию в cppreference.com :

Шаблон класса basic_string_view описывает объект, который может ссылаться на постоянную непрерывную последовательность char -подобногообъекты с первым элементом последовательности в нулевой позиции.

Однако может быть полезно использовать этот шаблон класса с неконстантными char указателями, например, для записи в завершающий нольСтрока байта с использованием стандартных алгоритмов. Например, воображая гипотетического std::editable_string_view, владеющего char*, можно написать что-то вроде

void filler(char *str, std::size_t len, char c) {
    std::editable_string_view sv(str, len);
    std::fill(sv.begin(), sv.end(), c);
}

Есть ли причины для std::basic_string_view поддерживать только указатели констант?

...