Programming Stream C++11

From CDOT Wiki
Jump to: navigation, search

Agreed Detail Changes to OOP244/BTP200 - C++11

  • new - add – from 344/300 – space created by moving const and pointer-array equivalence to 144/100
simple file objects
inline functions
default parameters
function templates
abstract base classes
enhance namespace syntax and descriptions – short definition at intro – fuller examples at end
  • trivial additions - add to align with C++11
long long int – at least as large as long int and no fewer than 64 bits
nullptr
auto – creates a variable of the same type as the initializer itself – specific type is not always easy for the user to identify
object is fully constructed once any constructor has finished execution
delegated construction – constructor can call other peer constructors – cf. Java, C#
data member initialization – = initial_value - constructor can override this initial value
= delete prohibits calling a member function with specified signature – avoids silent conversions
enhanced for – iteration over a list of elements
type-safe casting *_cast< >
terminology - 'special' member functions are the default ctor, copy ctor, copy assignment operator, and destructor
terminology - 'polymorphic class' is a class that declares or inherits a virtual function