Опасность устарела: несколько важных нюансов в новых стандартах C++
Undefined behavior (UB) — боль, знакомая каждому разработчику со стажем; эдакий «код Шредингера», когда не знаешь, правильно тот работает или нет. К счастью, стандарты языка С++20/23/26 привнесли относительно неопределенного поведения кое-что новое. И довольно важное, если вы — архитектор ПО, а «плюсы» — ключевой стек вашей компании (подробнее о том, как и почему мы в «Лаборатории Касперского» много используем С++, читайте здесь).
В этой статье я со своих позиций Senior Software Architect и Security Champion в микроядерной операционной системе KasperskyOS рассмотрю кейсы-ловушки, в которые можно попасть практически в любом из стандартов, и покажу, что меняется в С++20/23/26, — уменьшается ли количество кейсов с неопределенным поведением, и становится ли С++ безопаснее.
Читать дальше →
В этой статье я со своих позиций Senior Software Architect и Security Champion в микроядерной операционной системе KasperskyOS рассмотрю кейсы-ловушки, в которые можно попасть практически в любом из стандартов, и покажу, что меняется в С++20/23/26, — уменьшается ли количество кейсов с неопределенным поведением, и становится ли С++ безопаснее.
Читать дальше →
Источник: Хабрахабр
Похожие новости
- Как запустить VLESS + Reality на старом Intel iMac с macOS Catalina 10.15.8
- Кто выпустил гончую. Ищем следы коллекторов BloodHound в логах Windows
- HTML во вложении — это программа. Почему почтовые фильтры его пропускают и как SOC его ловит
- Как СМИ рождают “хакеров” и как сам Глава группировки слил секретные методы DDoS
- Погосян Марго: В топ-4 рынка с маскотом
- Пентест с помощью ИИ в России и материалы для сертификации по безопасности ИИ
- Интеграция MULTIDIRECTORY и MULTIFACTOR: двухфакторная аутентификация в Kerberos
- Глухарь ESPшный — мемуары охотника
- Когнитивная эргономика в веб-дизайне: Как не отупеть от собственного интерфейса
- Процесс охоты за угрозами