Я только что обнаружил, что xcode/clang не позволяет создавать std::string_view из char* nullptr. Я ожидаю, что это установит size() в 0 и вернет null для data(), и именно так это реализовано в gcc 7.2 на моем компьютере с Ubuntu Linux.
Я проверил http://en.cppreference.com/, но не смог найти ни одного комментария по этому поводу, так что стандарт говорит?
std::string_view
- это просто псевдонимstd::basic_string_view<char, std::char_traits<char>>
. Этот второй параметр — черты. Кажется, не сказано, что должно произойти, еслиi
выходит за пределы диапазона, поэтому я просто предполагаю, что это недопустимо здесь 11.11.2017nullptr
в качестве единого аргумента конструктора дляbasic_string_view
иbasic_string
. 10.08.2018your_string_view = {};
вместо своп-трюка. 18.11.2020