Modern C++ is safer than much of the C++ software written decades ago, but it is still not yet a memory-safe language by default. This article surveys what currently exists to support safer C++, the practical work now underway in LLVM and the C++ standards process to reduce undefined behavior that leads to memory-related security and correctness bugs, and the potential for a near-100% memory-safe C++ programming environment in the near future.