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

8 ответов

6 просмотров

вот вы раст раст. вот если вы в теме спрошу. 1. в расте есть шаблоны как в ++ (нет я не фанат метапрограммирования) но мне понравился CRTP шаблон для всяких алгоритмов и т.п особенно в эмбедет заходит. я даже црц для 03 плюсов написал ибо тянуть бустовый ну это ппц. 2. вчера в ++ чате не смогли дать решение для банальной задачи: template <class integral> constexpr integral flipbit(integral x, int b) noexcept { static_assert((b > 0) || (b <= sizeof(x) * CHAR_BIT), "WTF?"); //должно работать когда b известно в компайл тайм, иначе на совести программиста return x ^ (integral(1) << b); } может ли раст такое? 3. что не хватает в плюсах, так это выполнение кода для генерации чего либо. например есть функция генерации црц таблицы, вы пишите что-то типа: const crc_data[256] = get_table(); чтобы мы в компайл тайм выполнили get_table() по элементно или еще как, и заполнили таблицу и на флэшку уже записали таблицу, а не вот это вот пишем мелкую программку, выводим на консоль, копируем в исходник.

Alexey-Tsvetkov Автор вопроса
Stas Koynov
вот вы раст раст. вот если вы в теме спрошу. 1. в ...

Не, я в расте не секу. Слышал только, что его на какие-то мк завезли.

Alexey-Tsvetkov Автор вопроса
Stas Koynov
вот вы раст раст. вот если вы в теме спрошу. 1. в ...

Пробовал юзать crtp, может не правильно? Компилятор мне не сообщает, если я забыл метод в дочернем классе определить. Получается молчаливый вызов нул

Alexey Tsvetkov
Пробовал юзать crtp, может не правильно? Компилято...

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

Alexey Tsvetkov
Пробовал юзать crtp, может не правильно? Компилято...

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

статик_ассерт не работает ибо b не явл-ся константой времени компиляции, даже если она ей явл-ся. ибо аргументы функции не констэкпр

и как я это должен сделать? шаблон написать? мне нужно чтобы в этой функции аргумент, если он известен во время компиляции прошел через статик ассерт и дал мне гарантии, я хочу вот этого: http://open-std.org/JTC1/SC22/WG21/docs/papers/2019/p1045r1.html

Stas Koynov
и как я это должен сделать? шаблон написать? мне н...

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

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта