Вебинар: Хороший тимлид — не друг и не надсмотрщик. Как найти баланс через 1-to-1 - 28.05
Пока индустрия спорит о безопасности памяти, комитет ISO и разработчики продолжают ковать будущее любимого многими языка, мы собрали самые интересные события в мире C++ за последнее время, а также полезные материалы.

Комитет ISO завершил техническую работу над C++26. На ряде встреч комитет уточнил функции будущего стандарта, и это превзошло многие ожидания. Вот ключевые нововведения:
std::execution: предоставляет унифицированный фреймворк для асинхронности, конкурентности и параллелизма;pre, post, contract_assert: позволяют задавать предусловия, постусловия и утверждения прямо в объявлениях функций;#embed для бинарных данных, улучшенное метапрограммирование и многие другие важные обновления.Компиляторы GCC и Clang уже реализовали большинство функций C++26 в процессе стандартизации, в ближайшее время они появятся и в других компиляторах.
Борьба за безопасность продолжается и для будущего C++29. Бьёрн Страуструп активно продвигает концепцию C++ Profiles. Профили представляют собой набор дополнительных правил, которые разработчик может применить в коде для обеспечения безопасности.
Профили помогают избежать распространённых проблем, таких как разыменования нулевого указателя или выходы за границы выделенного буфера. Также профили предоставляют унифицированную основу, позволяющая повысить безопасность без ущерба для ключевых преимуществ C++.
Этой весной вышло новое обновление LLVM 22.1. В этой версии добавлено большое количество изменений, которые не только расширяют совместимость с различными архитектурами, но и внедряют инструменты глубокого управления памятью. Вот основные изменения:
А полный список можно найти на официальном сайте.
Rust vs C++: Competition or Evolution in Systems Programming for 2026
Языки C и C++ являются основой современного программного обеспечения. Операционные системы, базы данных, игровые движки и компиляторы — все они берут свое начало именно в этих языках. И долгое время выбор в их пользу был очевиден: они предлагали скорость, мощность и надёжность. Но сегодня есть ещё вариант – Rust. Этот язык взял в себя основные преимущества С++ и решил некоторые из его проблем, включая безопасность памяти и неопределённое поведение. Так что же выбрать разработчику? Автор статьи подробно рассказывает в каких ситуациях использовать Rust или C++, а также описывает плюсы и минусы этих языков.
Что представляет собой неквалифицированный поиск имени n в области S? Это функция компилятора, которая выявляет все объявления n, расположенные непосредственно в этой области. На первый взгляд, это кажется простым, но даже такой механизм часто не работает так, как ожидает программист. Например, есть пространство имён N и локальная переменная с тем же именем N. Могут ли они сосуществовать? Да, потому что они находятся в разных областях видимости. А как насчёт пространства имён и глобальной переменной с одинаковым именем? Подробнее вопрос о поиске имён разобрал автор статьи, с примерами и пояснениями. Эта публикация является продолжением темы механизма поиска имён, которая была затронута в статье ниже.
Как далеко видит lookup в C++?
Хорошей практикой в C++ считается размещение функций рядом с типами, для которых они предназначены. Однако, чтобы такой подход работал корректно, важно понимать механизмы поиска имён и знать, где можно размещать функции, не нарушая правил языка. Автор статьи раскрывает тему поиска имён в целом, так и тему поиска, зависящего от аргументов (ADL), в частности.
Тихий враг или молчаливый союзник: коротко о выравнивании в C++
Вы когда-нибудь задумывались, как хранятся данные в памяти компьютера? Каждая переменная занимает место в памяти как последовательность байт по конкретному адресу. Однако доступ к этим данным не прямой: процессор сначала обращается к быстрому кэшу, который обменивается с оперативной памятью блоками данных.
В этой серии статей автор подробно описывает механизм выравнивания данных. Вторая часть тут. А третья тут.
Ревью вайб-кода с гнильцой, который притворяется оптимизированным C++ кодом
Вайб-кодинг сейчас очень популярная тема. В этой статье автор на примере маленького проекта markus рассказывает, почему важно понимать сгенерированный код и уметь видеть, что скрывает красивый текст программы. А как вы относитесь к вайб-кодингу? Пишите в комментариях!
Чтобы оставаться в курсе событий из мира C++, подпишитесь на Telegram-канал PVS-Studio. Там вы найдёте статьи от экспертов компании, видео-обзоры с последними обновлениями анализатора, анонсы мероприятий, мемы и много чего ещё. И самое главное, вы всегда можете оставлять комментарии, на которые мы с радостью вам будем отвечать!
Инструменты для разработчиков игр и не только
Эксперты из Forgotten Empires, Playrix и PVS-Studio разобрали, какие инструменты входят в арсенал GameDev-команд, зачем они нужны и почему профилировщики играют ключевую роль в разработке. А бонусом – показали, как превратить ваш код в настоящий город!
Как компиляторы на основе LLVM моделируют неопределенное поведение, извлекая пользу
На C++ Russia тоже выходят интересные доклады. В этом докладе спикер рассказал о том, как компиляторы на основе LLVM, такие как Clang, решали проблему представления неопределенного поведения в своем IR. В докладе вы познакомитесь с понятием отложенного UB, из-за которого опасный код не взрывается сразу, и увидите, как LLVM с ним работает. Как было раньше и как стало сейчас, как от этого выигрывает оптимизатор, и какие опасности подстерегают тех, кто недостаточно осторожен с конструкциями, которые могут производить UB.
Lightning Talk: Learning C++ Through Writing Coding Questions – CppCon 2025
CppCon делится докладами с прошедшей конференции. В этом докладе спикер рассказывает, почему создание собственных задач для обучения сотрудников — это один из лучших способов освоить современные стандарты C++. А также обсуждается, как можно досконально изучить конкретную фичу языка, чтобы уметь объяснить её другим через код и быстро внедрить её в проект.
Как повысить эффективность команды разработки
Почему увеличение штата не работает? Как статический анализатор может сэкономить время команды разработки? На эти и другие вопросы ответили на вебинаре. Спикеры поговорили о системном управлении, автоматизации и полезных инструментах.
C++ сегодня: меньше магии — больше инженерии | Дмитрий Свиридкин
Выпуск про сильные и слабые стороны C++, об инструментах, которые помогают держать код под контролем — санитайзеры, линтеры, clang-format, ranges. И, конечно же, сравнение с Rust и Go: где они выигрывают в DX и безопасности, а где всё упирается в экосистему и совместимость.
C++ 2026: безопасность, рефлексия, C++ vs Rust, будущее языка
В выпуске про новые стандарты C++ и главные направления развития языка: безопасность, рефлексию, модули, стандартную библиотеку. Снова про противостояние C++ и Rust: нужен ли C++ borrow checker, можно ли догнать Rust по безопасности и стоит ли вообще это делать.
Зачем делать игры, которые увидят немногие?
В подкасте принял участие Слава Грис, разработчик игр и блогер. Спикеры обсудили точку входа в геймдев, как инди-разработчику найти своего игрока, и зачем делать игры, которые поймут немногие. Также можно посмотреть на VK Video.
Использование искусственного интеллекта в разработке
Как LLM справляются с реальным кодом — и с огромными проектами? В чём разница между агентами и ассистентами, и почему параллельность может стать ключом к прорыву? Заменит ли ИИ обычных разработчиков? Эти и другие вопросы мы обсудили с Евгением Сергеевым (S0ER). Также можно посмотреть на VK Video.
Контроль команды: как и зачем?
Если вы руководитель отдела, то вам будет полезен этот выпуск. Здесь мы говорим про контроль команды, его виды, как не убивать креативность у сотрудников, зачем нужны внутренние обучения и многое другое. Также можно посмотреть на VK Video.
Развитие C++ не стоит на месте. Добавляются новые полезные функции, работать становится удобнее, а также приходят и усложнения. Чтобы лучше понимать механику работы любого языка, можно попробовать создать свой собственный.
У нас как раз есть бесплатный курс по созданию своего языка программирования! Это 10 уроков в формате лайвкодинга. Юрий Минаев, архитектор PVS-Studio, показывает весь путь на C++: от реализации лексера и метода рекурсивного спуска до создания собственного эвалюатора. Минимум сухой теории и максимум кода — отличный способ прокачать свои навыки программирования.
Подробнее о курсе можно почитать по ссылке.

Спасибо, что просмотрели наш дайджест! Мы будем рады, если вы также будете делиться с нами интересными новостями и событиями. Присылать их можно с помощью нашей формы обратной связи.
И помните, что вы всегда можете попробовать PVS-Studio бесплатно на своём проекте в течение 30 дней. Промокод тут!
0