Вопросы по теме 'string-view'

Почему string_view вместо обобщенного container_view‹T›?
Я нашел string_view из нового стандарта С++ 17 немного избыточным. У нас есть довольно подробный набор простых механизмов для передачи данных вызываемому без особых накладных расходов, и теперь есть один другой который также специфичен только...
1022 просмотров
schedule 04.10.2022

Как использовать std::string_view::remove_prefix() в constexpr string_view
std::string_view::remove_prefix() и std::string_view::remove_suffix() являются функциями-членами constexpr в С++ 17; однако они изменяют переменную, для которой они вызываются. Если значение равно constexpr , оно также будет const и не...
1032 просмотров
schedule 23.05.2023

Как преобразовать std::string_view в double?
Я пишу анализатор С++ для пользовательского файла параметров для приложения. У меня есть цикл, который читает строки в виде option=value из текстового файла, где value нужно преобразовать в double . В псевдокоде он делает следующее:...
7019 просмотров
schedule 05.10.2022

Преобразование string_view в строку c с нулевым завершением
Как бы вы преобразовали std::string_view в строку c с завершающим нулем? Я передал string_view в функцию, и мне нужно передать его в другую функцию, которая принимает параметр const char* . Однако, глядя на эту документацию для string_view ,...
193 просмотров
schedule 15.01.2023

Является ли доступ к представлению объекта с помощью конструктора string_view(const char*, size_type) определенным псевдонимом char или неопределенным поведением?
Пусть у нас есть этот объект constexpr uint64_t lil_endian = 0x65'6e'64'69'61'6e; // 00en dian // a.k.a. Clockwise Rotated Endian which allocates like // char[8] = { 'n','a','i','d','n','e','\0','\0' } Считается, что memcpy также...
83 просмотров

Является ли std::move безопасным в списке аргументов, когда аргумент пересылается, а не создается перемещение?
Пытаясь предоставить решение для std::string_view и std::string в std::unordered_set , я играю с заменой std::unordered_set<std::string> на std::unordered_map<std::string_view, std::unique_ptr<std::string>> (значение равно...
582 просмотров
schedule 27.06.2023

Почему у std::string_view нет методов assign() и clear()?
Реализация этих методов кажется мне простой, и они сделают использование std::string и std::string_view более взаимозаменяемым. В конце концов, у std::string_view есть конструкторы, которые оставляют объект в том же состоянии, что и эти методы....
2037 просмотров
schedule 27.05.2023

Когда вам нужна строка с завершающим нулем в сценарии только для чтения?
Я экспериментировал с библиотекой std::string_view и подумывал об изменении кодовая база, над которой я работал, чтобы максимально использовать std::string_view . Однако во многих темах, которые я читал, обсуждалось, когда и где использовать...
335 просмотров
schedule 25.07.2022

Является ли хорошей практикой замена «const std::string &» на «std::string_view» или просто «std::string»?
Я всегда предпочитал const std::string & , когда мне нужно было играть с std::string . Но недавно я вдруг заметил, что const std::string & вообще не нужно использовать. std::string_view лучше подходит для строк, доступных только для...
142 просмотров
schedule 18.09.2022

Могу ли я использовать std::string_view с getline при разборе файла?
Недавно я узнал о std::string_view и о том, что это намного быстрее, чем выделение строк, поэтому я пытаюсь использовать его вместо std::string, где это возможно. Есть ли способ оптимизировать цикл, который анализирует файл построчно, чтобы вместо...
466 просмотров
schedule 23.09.2022

Когда именно разрушаются аргументы функции?
У меня вопрос, потому что мне непонятно, когда уничтожаются аргументы функции. Следовательно, является ли конкатенация следующей функции doSomething подверженной ошибкам или нет? Я спрашиваю, потому что программист несет ответственность за то,...
81 просмотров
schedule 26.03.2023