C++ Insights: взгляните на свой код глазами компилятора

C++ Insights – See your source code with the eyes of a Compiler

C++ Insights — инструмент на основе Clang, который выполняет преобразование исходного кода в исходный код, чтобы показать, что компилятор делает за кулисами. Он раскрывает неявные специальные функции-члены, преобразования типов, лямбды, range-based for и structured bindings. Проект доступен онлайн на cppinsights.io, имеет плагины для Vim, Neovim, VS Code и устанавливается через Homebrew. Автор Андреас Фертиг начал работу в 2017 году, чтобы сделать обучение C++ нагляднее.

Цель C++ Insights — сделать видимым то, что обычно и намеренно происходит за кулисами. Речь о магии, которую компилятор делает для нас, чтобы всё работало.
  1. jsrcout

    Обязательно попробую. У меня постоянно была проблема «а что компилятор-то думает?» именно с C++.

  2. alankarmisra

    Ооо, обожаю такие штуки. Я написал транспайлер C++ -> Clang -> JS, чтобы можно было показывать изменения значений поверх исходного кода на C++ в html и дать людям пошагово пройти через все изменения состояния. Они также могут менять входные данные и видеть, как меняются значения, потому что JS-слой мог пересчитывать значения — ради этого я и возился с транспайлингом — иначе я мог бы просто выводить изменения состояния и парсить их как CSV для шагов. Весёлый проект!

    https://youtu.be/ZPGysUX62OY

  3. StilesCrisis

    Хотел бы я, чтобы в примере из readme был показан захват лямбды. Вот где магия компилятора РЕАЛЬНО проявляется.

Ещё за этот день

2026-10-03