This document provides an overview of object-oriented programming inheritance in C++. It defines inheritance as a core OOP concept that allows a class to inherit properties and behaviors from another class. The document outlines the main types of inheritance (single, multiple, hierarchical, hybrid), describes the relationship between base and derived classes, and explains the benefits and drawbacks of inheritance. It also covers protected members, constructors/destructors in derived classes, and the public, protected, and private types of inheritance and their access levels. Finally, it discusses how inheritance can be used in software engineering for code organization, polymorphism, and code reuse.