Preface
Imagine C++ as a mythical, ancient language, descended from the ones, forged in the fires of low-level magic, tempered with the precision of high-level incantations. Born out of the need to both control the machine and present an abstraction, it is a tool wielded by those who seek to bridge the chasm between raw machine and high-level constructs, while still accessing the luxury of modern tools.
Imagine this book as unlike any other you have encountered. The authors have embarked on a daring quest, navigating the labyrinthine depths of C++ to shed light on its true nature. With courage and precision, they aim to strip away the layers of myth and mystery that have long surrounded this fabled language, tackling both its triumphs and its perceived flaws.
Approach this book with an open mind, for it promises a journey unlike any other, a journey not suited to the faint of heart. The authors dive headfirst into the complex reputation of C++, confronting its infamous pointers and intricate memory management, and even descending into the depths of low-level C++, where assembly reigns and pointers are simply numbers. We look at the different C++s that exist out there, at the ecosystem around C++, at how to learn it today, and at the things you’d do better to forget about. Through each chapter, we peel back the layers, uncovering the underlying logic and elegance within these powerful constructs. With stories of C++ legends and a touch of humor (albeit sometimes questionable), we aim to keep you engaged while guiding you through both the sublime and the absurd. Expect to encounter some of the worst code you’ve ever seen, presented intentionally to teach you what not to do, all while illuminating the true potential of C++. This is a book designed not just to teach but also to reveal the soul of C++ through both its virtues and its pitfalls.