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

Привет. У меня есть коллекция, которая принимает в конструкторе std::initializer_list<T>: class Vec

{
Vec() noexcept;
Vec(std::initializer_list<T>);
Vec(const Vec &);
Vec(Vec &&) noexcept;
~Vec() noexcept;
...

И у меня есть ещё std::deque<T>, T — обычный плоский тип вроде double. Задача — построить Vec по содержимому дека. Если делаю так:
auto &dots = ... ;
rust::Vec<T> xs { dots[0], dots[1], dots[2] };
return xs;

то всё очевидно работает. Если пытаюсь натянуть динамический размер, то не работает ( error: no viable conversion from returned value):
auto &dots = ... ;
rust::Vec<T> xs(std::initializer_list<T>(dots));
return xs;

Правильно ли я понимаю, что initializer_list динамического размера создать невозможно?

5 ответов

3 просмотра

У initializer_list нет конструкторов (кроме конструктора по умолчанию)

Тебе тут не нужен initializer_list, сделай конструктор от рэнжа или хотя бы от пары итераторов

std::initializer_list нужен в первую очередь для данных, которые вбиты в коде как { 1, 2, 3 }, а для динамики, как уже подсказали, нужна пара итераторов/ренж

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

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

Всем привет, на линуксе лучше на fasm или nasm учиться писать для начала ?
meszjol
14
Если у меня есть такой класс: Object = {} function Object:new(a_name, a_transform, a_color, a_mesh, a_material, a_shader, a_textures) local private = {} private.n...
Cuarno Vile
4
было так ;void set_http_ver(RESPD* ptr, char* version, uint32_t length) // example: 'RTSP/1.1 ' set_http_ver: mov eax, [esp + 4] mov ecx, [esp + 8] ...
Mixail Frolov
5
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Гайз, кто-нибудь пробовал запустить probe-rs под камень, которого нет в probe-rs? Мб есть какой-нибудь пример у кого... Через target-gen попробовал сгенерировать chip-descript...
Максим Смирнов
2
зачем же переименовывать ? чтобы кол-во участников возросло или вдруг IBM от этого снова на свифте начнет кодить ? Я не понимаю что страшного в том что свифт гавно, если это т...
Oleh Nerzh
10
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
Evo 1.4.34 PHP 7.4 Все работало штатно. На ровном месте SimpleGallery начал выдавать ошибку Что может быть? Уже все переустановил по новой. Места хватает. Хостинг reg.ru
Paul Savchenkov
6
здравствуйте. совершаю вот такую вещь: strcpy(line, (char)current_number); где current number — неподписанный шорт, line — массив чаров. ругань следующая: main.c:29:30: error...
Roberto's Ширгозиев
13
Карта сайта