C++ Concept
I completed assignments covering modern C++ programming concepts, including syntax, strong typing, resource management, procedural programming, object-oriented programming, generic programming, and compile-time programming. The primary development language used was C++. The code is available, pls contact me if you want to view the code.
Course Overview
This course covers fundamental and advanced concepts of modern C++ programming. Topics include:
- Basic C++ Language Concepts: Syntax, strong typing, and type deduction.
- Build Systems and Dependency Management: Automatic compilation, linking, dependency management, continuous testing, and integration.
- Resource Management: RAII, smart pointers, universal references, ownership, and copy/move semantics.
- Procedural Programming: Functions, parameter passing, lambdas, overloads, and error handling.
- Object-Oriented Programming: Classes, inheritance (single and multiple), and polymorphism.
- Generic Programming: Templates, variadic templates, fold expressions, and patterns such as CRTP.
- Compile-Time Programming: Template recursion, constexpr, and type traits.
- Containers and Iterators: STL containers, iterator concepts, and views.
- Optional: Parallel programming concepts (threads, atomics, async/futures).
- Future Outlook: Upcoming C++ concepts like Metaclasses and Concepts.