Abstract :
Summary form only given, as follows. In this talk, we present a series of C++ programming design idioms for writing efficient C++ programs, briefly review the underlying C++ object model, and turn to design alternatives when the idioms themselves become overwhelmed with, say, large-scale object creation and copy. We look at object-based and object-oriented design, use of the STL container classes and generic algorithms, and the design alternatives of inheritance versus parameterization through use of the C++ template facility. This is a particularly effective area of program efficiency because (a) the idioms generally make for more readable programs, and (b) once the idioms and implementation (or object) model is internalized, these gains in efficiency come mostly for free - I like to think of them as low-hanging fruit. In the course of the tutorial, I??ll point out areas where experienced C programmers tend to write correct but frightfully sluggish C++ code by contrasting C and C++ programming idioms.