C++ and other lectures
Учебный канал в Телеграм: тут будут анонсы и ссылки на лекции и стримы. Написать автору: @Tilir Boosty автора: https://boosty.to/cpp_lects_rus
Mostrar más📈 Análisis del canal de Telegram C++ and other lectures
El canal C++ and other lectures (@cpp_lects_rus) en el segmento lingüístico de Ruso es un actor destacado. Actualmente la comunidad reúne a 10 015 suscriptores, ocupando la posición 12 157 en la categoría Tecnologías y Aplicaciones y el puesto 63 447 en la región Rusia.
📊 Métricas de audiencia y dinámica
Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 10 015 suscriptores.
Según los últimos datos del 27 octubre, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de 52, y en las últimas 24 horas de 4, conservando un alto alcance.
- Estado de verificación: No verificado
- Tasa de interacción (ER): El promedio de interacción de la audiencia es 87.99%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 33.73% de reacciones respecto al total de suscriptores.
- Alcance de las publicaciones: Cada publicación recibe en promedio 8 812 visualizaciones. En el primer día suele acumular 3 378 visualizaciones.
- Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 98.
- Intereses temáticos: El contenido se centra en temas clave como компилятор, c++, llvm, struct, compilers.
📝 Descripción y política de contenido
El autor describe el recurso como un espacio para expresar opiniones subjetivas:
“Учебный канал в Телеграм: тут будут анонсы и ссылки на лекции и стримы.
Написать автору: @Tilir
Boosty автора: https://boosty.to/cpp_lects_rus”
Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 28 octubre, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.
template <typename T> int foo() { return 1; }
template <> int foo<int>() { return 2; }
template <> int foo<float>() { return 4; }
И функция sumfoos которая подставляет по ним пачку типов и как-то её сворачивает. Ну скажем складывает.
template <typename ...T>
int sumfoos() { return (foo<T>() + ...); }
Вы хотели бы написать шаблон функции apply_sumfoos с вот такой сигнатурой
template <typename Tuple> auto apply_sumfoos();
Идея в том что он принимает кортеж, разворачивает его и для его содержимого вызывает sumfoos.
std::tuple<int, float, double> t;
assert(apply_sumfoos<decltype(t)>() == 7);
Можно предложить кривой и косой, уродливый как черт с рогами, но рабочий вариант с dummy-аргументом.
https://godbolt.org/z/zxY1qf9hT
Но это не наш метод. Я утверждаю что есть более красивые способы (и даже можно обойтись без сворачивания с index sequence).
Наливайте себе чаю с булочкой или пивка с орешками и подключайтесь. Попробуйте придумать как это решали бы вы, а потом смотрите в комментарии и ставьте лайки лучшим вариантам. Ну и если вашего там не будет — смело постите. Если никто не угадает мой вариант, скажу его завтра.
UPD: мой вариант вычислили за 20 минут. Горжусь своим каналом ))
UPD2: выношу из комментариев самые интересные варианты.
0. Просто уход от nullptr за счёт type_identity, но всё ещё dummy arg https://godbolt.org/z/P41eeTcfK via @PaRat07
1. Биндинг свёртки: https://godbolt.org/z/85EhzdWve совместно @savvatelegram и @xray_3d
2. Рефлексия: https://godbolt.org/z/Pdqd75nxq via @xray_3d
3. Вывод типов и deduction guides: https://godbolt.org/z/6zTT6M8zh via @redPergament
3a. Его разновидность через оператор приведения: https://godbolt.org/z/cTh1W3r3e от него же
4. Hana-style (я добавил к решению подписчика пару consteval потому что смог): https://godbolt.org/z/GxcqKnWMK via @n13625124998637487500
4a. Его очень красивая и лакончиная разновидность через decltype (я тоже добавил consteval от себя) https://godbolt.org/z/zjErr58zz via @alamat1
5. Виртуозный std::apply https://godbolt.org/z/Ydd5e86oP via @savvatelegram
6. Сохранение промежуточного адреса инстанцированной функции https://godbolt.org/z/racKGYnW1 опять @xray_3d
7. in_place_type подход https://godbolt.org/z/Gq9G9n773 via @alamat1
Ну и самый наивный вариант: https://godbolt.org/z/48jnhKz45 здесь в редакции @ePilnikoff но вообще до него многие дошли и он совпадает с моим решением.
Наивный вариант очень интересно улучшил @s_i_g_a до состояния https://godbolt.org/z/GePnj8qE1 чтобы функция принимала любой tuple-like тип вроде того же std::array. Понятно что так можно улучшить каждый из предложенных вариантов.
Итого мы с вами нашли десять нетривиальных и принципиально разных способов добиться цели. Очень круто.
#questions