Задать вопрос
@CNNRNN

Использовать String или &str?

Я хочу распарсить запрос от браузера . Допустим мне пришел массив байтов и мне надо как то его структуировать .
Вопрос в том, что лучше использовать, ссылки на данные находящие в массиве или напрямую владеть данными.
  • Вопрос задан
  • 134 просмотра
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    Rust Developer. Professional
    5 месяцев
    Далее
  • Яндекс Практикум
    Rust для действующих разработчиков
    4 месяца
    Далее
  • OTUS
    Разработка децентрализованных приложений
    5 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
keksmen
@keksmen
Just a programmer
Решение тут не вполне однозначное.

С одной стороны, гораздо эффективнее было бы таскать ссылки (&str), т.к. их копирование или извлечение ссылки на subslice весьма дёшево. Это позволит создавать и отбрасывать структуры при синтаксическом разборе без оглядки на overhead от владения String.

С другой стороны, используя ссылки, вы обязуете себя обеспечить тот факт, что исходная строка будет жить дольше, чем ваш AST. Это накладывает приличные ограничения на ваш код.

В любом случае, я бы порекомендовал использовать &str. Однако, без кода подсказать, как лучше сохранить исходный String до конца обработки запроса, я не смогу.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы