The Design and Evolution of C++