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

Подскажите пожалуйста, как на шаблонах скопировать данные из initializer_list, чтобы

это всё работало при компиль тайме.
Пробую написать что-то типа своего std::array.
Соответственно там функции constexpr. Как я понял, в constexpr нельзя использовать циклы. Как тогда перенести данные из initializer_list в сырой массив T myarr[size] ?

8 ответов

21 просмотр

> Нельзя использовать циклы Можно, если C++14. В C++11 циклы заменяли на рекурсию

std::array использует единственный публичный член-массив и определения конструкторов вообще избегает

\--- Автор вопроса
Alexander Karaev
> Нельзя использовать циклы Можно, если C++14. В C...

нет, не работает оно. constexpr _INLINE __xval_random(const str_type* str) : _x_val(random_char<K, str_type>::value) { for (int i = 0; i < N; ++i) calculated[i] = calc_single(str[i]); } N - константа, определённая в шаблоне. calc_single имеет такую сигнатуру: constexpr str_type calc_single(str_type) const; calculated - массив str_type calculated[N] Почему может не работать?

\--- Автор вопроса
\--
нет, не работает оно. constexpr _INLINE __xval_ran...

Загоняешь в годболт и смотришь, какой компилятор что скажет. Обычно по диагностикам видно, где сломалось

\--- Автор вопроса
Denis P
mre есть?

https://pastebin.com/5vCTBnp7

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта