Рефлексию официально приняли в C++26. Четверть века ждали, осталось дождаться компиляторов
Рейтинг: 60.1% · 14 голосов
Войдите, чтобы голосовать
Голосовать «За» и «Против» могут только авторизованные пользователи. Войдите в свой аккаунт — или зарегистрируйтесь, это займёт минуту.
Нет аккаунта? Зарегистрироваться
- linux_lord
- Сообщения: 6
- Зарегистрирован: 23 май 2026, 20:45
Рефлексию официально приняли в C++26. Четверть века ждали, осталось дождаться компиляторов
Кто пропустил: P2996 проголосовали в драфт еще летом в Софии, сейчас C++26 практически финален, и рефлексия там. Оператор ^^ снимает мету с типа, сплайсы [: :] разворачивают ее обратно в код, члены структуры перечисляются на этапе компиляции. Сериализация, маппинги, биндинги без единого макроса и без внешних кодогенераторов.
Потыкал на godbolt в clang-p2996 (форк Bloomberg), простые вещи реально работают: пробежался по полям структуры, собрал из них JSON. После двадцати лет шаблонных извращений выглядит как магия.
Вопрос практический: GCC молчит, MSVC молчит. Кто-нибудь верит, что мы трогаем это в проде раньше 2030? И второй вопрос: что первым выкинете? я лично готовлюсь хоронить наш кодоген на питоне, который парсит хедеры регексами. да, знаю.
Потыкал на godbolt в clang-p2996 (форк Bloomberg), простые вещи реально работают: пробежался по полям структуры, собрал из них JSON. После двадцати лет шаблонных извращений выглядит как магия.
Вопрос практический: GCC молчит, MSVC молчит. Кто-нибудь верит, что мы трогаем это в проде раньше 2030? И второй вопрос: что первым выкинете? я лично готовлюсь хоронить наш кодоген на питоне, который парсит хедеры регексами. да, знаю.
✔ Лучший ответ сформирован автоматически — tashiro
define_aggregate в форке уже работает, структуры генерятся на компиляции, это сильно больше чем просто пройтись по полям. token sequences в 26-й не успели, отложили на следующий цикл, так что полноценный кодоген внутри языка это уже C++29. но даже без них перечисление членов плюс сплайсы закрывают процентов 80 моих хотелок. наш кодоген на питоне (тоже регексы по хедерам, привет ТС, нас таких леги…
Re: Рефлексию официально приняли в C++26. Четверть века ждали, осталось дождаться компиляторов
у нас геймдев и C++17, потому что консольные тулчейны живут в своем собственном времени. C++26 пощупаю ближе к пенсии. но за будущую смерть макросов типа REFLECT_FIELD(name, type) заранее спасибо, внукам расскажу
Re: Рефлексию официально приняли в C++26. Четверть века ждали, осталось дождаться компиляторов
✔ Лучший ответ — сформирован автоматически
define_aggregate в форке уже работает, структуры генерятся на компиляции, это сильно больше чем просто пройтись по полям. token sequences в 26-й не успели, отложили на следующий цикл, так что полноценный кодоген внутри языка это уже C++29. но даже без них перечисление членов плюс сплайсы закрывают процентов 80 моих хотелок. наш кодоген на питоне (тоже регексы по хедерам, привет ТС, нас таких легион) уже копает себе могилу
Re: Рефлексию официально приняли в C++26. Четверть века ждали, осталось дождаться компиляторов
одиночный ^ занят в C++/CLI, поэтому удвоили. ключевое слово reflexpr было в ранних версиях, выкинули за многословность: рефлексия по задумке используется часто, длинное слово замусоривает код. в пейперах есть целая таблица рассмотренных вариантов, этот еще из приличных. короче, побайкшедили за нас, можно выдыхать
- seniorsamurai
- Сообщения: 44
- Зарегистрирован: 15 май 2026, 19:29
Re: Рефлексию официально приняли в C++26. Четверть века ждали, осталось дождаться компиляторов
@jbentley, напомню про модули. приняли в 20-м, на дворе 2026, и где? cmake научился относительно недавно, clangd до сих пор спотыкается, в проде модули видели полтора человека. рефлексия сложнее модулей на порядок. закладывай не 2030, а 2032, и не разочаруешься. комитет штампует фичи быстрее, чем компиляторы успевают их переваривать, это уже система
Поделиться темой:
✈ Telegram
VK
- Похожие темы
-
-
- На ревью подняли 7% при официальной инфляции выше. По факту это понижение?
9 ответов · 702 просмотров
-
-
- В C++26 завезли рефлексию, а я на работе сижу на C++14. Зачем мне ваш прогресс
4 ответов · 9 просмотров
-
- WWDC 2026: новая Siri работает на Gemini. Apple официально не вывезла свой ИИ?
6 ответов · 5 просмотров
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость