The document provides information on various C++ concepts related to object oriented programming including:
- Data encapsulation and abstraction which involve wrapping data and functions together into classes and hiding implementation details.
- Inheritance which allows classes to inherit attributes and behaviors from other classes to promote code reuse.
- Polymorphism which allows classes to have different implementations of the same methods.
- Constructors and destructors which are special methods used to initialize and clean up objects.
- Composition and aggregation which describe relationships where a class contains other class objects.