Modern C++ Won’t Save Us

Modern C++ Won’t Save Us

My conclusion, based on reviewing evidence from numerous large software projects using C and C++, is that we need to be migrating our industry to memory safe by default languages (such as Rust and Swift). In particular, I often receive defenses of C++ of the form, “C++ is safe if you don’t use any of the functionality inherited from C” or similarly that if you use modern C++ types and idioms you will be immune from the memory corruption vulnerabilities that plague other projects. My professional experience writing relatively modern C++, and auditing Rust code (including Rust code that makes significant use of ) is that the safety of modern C++ is simply no match for memory safe by default languages like Rust and Swift (or Python and Javascript, though I find it rare in life to have a program that makes sense to write in either Python or C++).

Source: alexgaynor.net