Course Content
Basics of C++
- Structure of a program
- Variables. Data Types
- Constants
- Operators
- Basic Input/Output
Control Structures
- Control Structures
- Defining Functions
- Calling functions
- Call-by-value, call-by-reference
- Returning values from functions
Compound Data Types
- Arrays
- Character Sequences
- Pointers
Object Oriented Programming
- What is an Object ?
- What is a Class ?
- What is Object-Oriented Programming ?
- Defining classes
- Declaring Methods, data members
- Accessing data members
- Access Modifiers - Private, Public and Protected
- Object Construction
Overloading
- Function Overloading
- Constructor Overloading
- Copy Constructors
- Object Destruction
- Operator Overloading
- What operators can be overloaded ?
- << and >> operators
- cin and cout operators
Dynamic Objects
- Constructing objects on the heap - dynamically
- Object life cycle
- this operator
Inheritance
- Defining a base class
- Defining a child class
- Constructor execution in Inheritance
- Destructor execution in Inheritance
- Assessing base class members
- Function Overriding
- Polymorphic pointers
Templates
- Function templates
- Class templates
- Template specialization
- Non-type parameters for templates
- Templates and multiple-file projects
Namespaces
- Introduction
- using
- Namespace alias
- Namespace std
Exceptions
- What is an Exception?
- Exception specifications
- Standard exceptions
Type Casting
- Implicit conversion
- Explicit conversion
- dynamic_cast
- static_cast
- reinterpret_cast
- const_cast
- typeid
C++ Standard Library
Input / Output with files