- type safe enums (enum class)
- STL collections instead of plain C like types
- references for out parameters
- RAII
- smart pointers
- values types over heap allocations everywhere
- warnings as errors
The problem is making sure there aren't some guys in the team doing C style coding.
Nowadays C++ is still my language to go when I need to step out of Java and .NET.
The problems faced by Turbo Pascal and other languages to keep up with the OS vendors SDKs teached me to only invest on first class languages for production code.
Effective Modern C++, Tour of C++, Elements of Programming and From Mathematics to Generic Programming are all good books, where safe modern C++ is used.