You’ll learn core programming concepts and progress to advanced techniques, including arrays, strings, file handling, modular programming, and object-oriented design. You’ll also gain experience with modern C++ features such as the Standard Template Library (STL), concurrency, multithreading, and optimization strategies.
The course will be conducted in the following sequence:
. A brief C++ course topic list:
- C++ Basics — syntax, variables, data types, operators, control flow
- Functions — parameters, return values, overloading, scope
- Pointers & References — addresses, pointers, references, dynamic memory
- Arrays & Strings
- OOP — classes, objects, constructors, destructors, encapsulation
- Inheritance — single/multiple inheritance, composition, aggregation
- Polymorphism — overriding, virtual functions, abstract classes, interfaces
- Memory Management — stack/heap, RAII, ownership, smart pointers
- Copy & Move Semantics — copy constructor, move constructor, Rule of 3/5/0
- STL — containers, iterators, algorithms
- Templates — function/class templates, generic programming
- Modern C++ —
auto, lambdas,constexpr,optional, etc. - Exception Handling
- File I/O
- Concurrency — threads, mutexes, atomics, futures
- Build & Tooling — compilation, linking, CMake, debugging
- Advanced C++ — type traits, concepts, metaprogramming, coroutines
- DSA in C++