Last Updated: June 6, 2026
C++ has sharp edges. Some of them are tradition (signed overflow), some are inherited from C (narrowing conversions), and some come from the cost of being a multi-paradigm language (slicing, virtual calls in constructors). This chapter is a catalog of the traps that bite C++ developers most often, with a quick diagnosis and fix for each. It is not deep coverage of any single topic, those live in their own chapters, this is the "things that bite" list you keep next to your keyboard.