Ssylka

C++: опасные лабиринты неопределённого поведения

Обзор книги, известной под неофициальным названием "ubbook", раскрывает глубокие аспекты неопределенного поведения в C++. Материал предназначен для опытных C++ разработчиков, а не для новичков.
C++: опасные лабиринты неопределённого поведения
Изображение носит иллюстративный характер

В 12 главах подробно рассмотрены сложные темы, начиная от неочевидных преобразований типов и переполнения целых чисел до проблем с висячими ссылками, лямбда-захватами и семантикой перемещения. Отдельное внимание уделяется тонкостям работы с памятью, включая использование std::vector, shared_ptr, и placement new, а также вопросам многопоточности и сигнальной безопасности.

Книга также затрагивает такие специфические проблемы, как ложный noexcept, нарушения ODR, статический порядок инициализации, разыменование нулевых указателей, iostreams, оператор запятая, и VLA. Обсуждаются невыровненные ссылки, тривиальные типы и ABI, неинициализированные переменные, а также особенности новых возможностей C++20.

Автор, имеющий многолетний опыт в разработке высокопроизводительного ПО, подробно рассматривает практические аспекты неопределенного поведения, предостерегая от потенциальных ошибок, и предоставляет ценные знания для написания надёжного и безопасного кода.


Новое на сайте