Здравствуйте, Alexander G, Вы писали:
AG>Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>>Вообще, как по мне, их лучше явно запретить (=delete).
AG>И писать всегда std::string_view("Literal") или std::string_view{} для пустой строки?
В моих трех тыщах файлов основного проекта, вылезло 21 место, где вызывается конструктор/оператор_присваивания для const char*.
Сижу, думаю
| AG>Кстати, я бы тогда хелперы предложил, заодно минус лишний strlen: |
| template<std::size_t Size>
std::string_view string_from_literal(const char (&data)[Size])
{
return std::string_view(data, data+Size);
}
inline constexpr null_string = std::string_view{};
|
| |
+5
UPD. А оно точно будет работать как ожидается? Что-то у меня сомнения насчет того, что в Size не будет включен терминальный нуль. Надо проверить
-- Пользователи не приняли программу. Всех пришлось уничтожить. --