Module 01 · 1.5 hrs
Start hereIntroduction to C++
History, features and applications of C++, differences between C and C++, structure of C++, compiling and running C++ programs.
Object-oriented design in C++
Learn object-oriented programming the right way — classes, constructors, inheritance, polymorphism, templates, STL, exception handling and multithreading in modern C++.
Every module pairs a focused topic with a guided practical exercise — learn it, build it, then practice it on the Atom Code portal in the same session.
Introduction to C++
History, features and applications of C++, differences between C and C++, structure of C++, compiling and running C++ programs.
Basic Syntax and Data Types
Variables, constants, data types (int, float, char), input/output (cin/cout), comments.
Operators
Arithmetic, relational, logical, bitwise, assignment, increment/decrement, ternary, sizeof, type casting, special operators, operator overloading, precedence and associativity.
Control Statements
Conditional statements (if-else, switch), continue, break.
Looping Statements
Implementing for, while and do-while loops.
Functions and Modular Programming
Function declaration/definition, parameter passing, call by value/reference/address, return values from functions.
Recursion
Understanding and implementing recursion, inline functions.
1D Arrays
Declare and define arrays, handling arrays and traversal.
2D Arrays
Declare and define 2D arrays, matrix manipulation, patterns using arrays.
Strings
Handling string functions and string manipulation.
Pattern Manipulation
Pattern manipulation using arrays and strings.
Pointers and Dynamic Memory
Pointer basics, pointer arithmetic, dynamic memory (new/delete), null pointers.
Introduction to Object-Oriented Programming (OOP)
Classes/objects, access modifiers (public/private), member functions, class design.
Constructors and Destructors
Default, parameterized and copy constructors, destructor use and purpose.
Inheritance
Types of inheritance (single, multiple, hierarchical), virtual base classes.
Polymorphism
Compile-time and run-time polymorphism, virtual functions, function overriding.
Templates and STL
Introduction to STL, using vectors, sets, maps, function/class templates.
Exception Handling and Multithreading
Try-catch blocks, throwing exceptions, custom exceptions, creating threads in C++11, thread synchronization.
Advanced OOP (Abstract Classes, Virtual Functions)
Abstract classes, virtual destructors, pure virtual functions, interfaces.
Operator Overloading
Overloading operators (+, -, *, <<, >>), rules for operator overloading.
File Handling
Reading from and writing to files, modes (r, w, a), error handling in file operations.