172 похожих чатов

Подскажите плиз с выбором типа. У меня есть DTO-шка, которая

описывает запрос/ответ стороннего сервиса.
В ней есть свойство-массив (и даже не одно)

Какой тип лучше использовать для такого массива? Vec<T>/Box<[T]>/&[T]?
Хочется уйти от кучи параметров по лайфтаймам, так как я не уверен, сколько этот объект должен жить.
Сейчас использую Box<[T]>, но вижу потенциальную проблему в том, что массив сначала создаётся на стеке, а потом копируется в кучу. Думал что как-то можно Vec превратить в Box<[T]>, чтобы обойти эту проблему, но не нашёл такого способа.

Скорее всего сейчас буду переходить на Vec, так как уже и так использую HashMap, но не уверен до конца

10 ответов

17 просмотров

у вектора есть метод into_boxed_slice

Vabka- Автор вопроса
Mikail Bagishov
у вектора есть метод into_boxed_slice

капец. А название достаточно очевидное получается

Vabka- Автор вопроса
Mikail Bagishov
у вектора есть метод into_boxed_slice

А на счёт практики, как лучше? DTO_шка в целом иммутабельная у меня - после создания никак не планируется дальше работать с ней - только сериализовать и отправить

Vabka- Автор вопроса

Ну по поводу практики меня больше беспокоит поддерживаемость и лёгкость кодирования, ибо это у меня первый более/менее полноценный сервис на расте и я хз как мои решения скажутся в будущем. А стек мне уже порвало)

Vabka
Ну по поводу практики меня больше беспокоит поддер...

Ну, в данном конкретном случае я согласен с @MikailBag .

Vabka- Автор вопроса
Mikola Summer Duck
Ну, в данном конкретном случае я согласен с @Mikai...

Тоесть особо разницы нет - что Vec, что Box<[T]> будет ок?

Vabka
Тоесть особо разницы нет - что Vec, что Box<[T]> б...

Box<[T]> хорош тем что ты его случайно не ресайзнешь

Vabka
Тоесть особо разницы нет - что Vec, что Box<[T]> б...

Разница есть, как Михаил заметил, но я не думаю что в твоём случае она важна.

Vabka
Тоесть особо разницы нет - что Vec, что Box<[T]> б...

Если ты собираешься его расширять юзай век, если нет то бокс от слайса. Исходи из потребностей семантики а не того как там что лежит

Vabka- Автор вопроса
Αλεχ Zhukovsky
Если ты собираешься его расширять юзай век, если н...

Ну примерно так я и рассуждал - штука один раз собирается в заранее известный размер и больше никак не трогается

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

Обсуждают сегодня

ого, прикольно, а что пишешь?
CodWiz | Серёжа by CodWiz
32
А что за прикол,типа тут я никого не найду получается?
🥀
17
а почему бы не поведать миру эти дополнения, сделав их по сути стандартными для ide ?
Mixail Frolov
26
А как ребята типа теле2 зашли? У них же пополнение баланса моментальное
Alexandr Dubickiy
22
Хочу поинтересоваться,для кого-то сейчас актуально изучение языков? Поделюсь материалами по иностранным языкам.
Дима
12
Здравствуйте. Какое условие необходимо, что бы приложение скомпилированное лазарусом в ubuntu запускалось на astra linux?
Эдуард Щербаков
21
Нужно найти номер позиции, с которой начинается подстрока S2 в строке S1. lea di, s1 ;Строка lea si, s2 Подстрока again: mov al, [si] mov ah, 02 ...
Ыиу
11
Выиграл лотерейные билеты (во взрослую жизнь), где обменивать на игрушки?
Magic
8
Привет Вам, Гуру вапора Смею обратиться с вопросом, по какой причине не сохраняются куки через request.client.send(get) и urlsession? Опишу чуть точнее: - есть первый запрос, ...
Alexander Orlov
10
.model small .stack 100h .data x db ? y db ? equation db 10, 5, -20 result db ? .code main proc mov ax, @data mov ds, ax ; Ввод координат x и y ...
Mr Beast
1
Карта сайта