Welcome to my repository containing 42 School's CPP Modules project. This repository includes all ten modules, from CPP00 to CPP09, each designed to progressively introduce and solidify various C++ programming concepts following the C++98 standard.
The CPP Modules project is a series of exercises aimed at teaching essential C++ programming skills. Each module focuses on different aspects of C++ and object-oriented programming (OOP), encouraging clean code practices, modular design, and the development of reusable code components. The project helps bridge the gap between C and C++ programming, building upon foundational C knowledge to explore C++ features and paradigms.
- CPP00 to CPP04: These modules introduce basic C++ syntax, including classes, constructors, destructors, operator overloading, inheritance, and polymorphism. They cover the basics of object-oriented programming, such as encapsulation and data abstraction.
- CPP05 to CPP08: These modules dive deeper into more advanced topics like exception handling, templates, STL containers, iterators, and algorithms. They focus on robust error handling, efficient code, and leveraging the power of the STL.
- CPP09: The final module is a capstone project that combines all the concepts learned in previous modules. It challenges students to implement complex systems and data structures using C++98, ensuring compatibility with older environments and emphasizing good software design principles.
-
Clone the repository:
git clone https://github.com/arnoop88/cpp_modules.git cd cpp_modules -
Navigate to any module exercise directory and build it using the provided Makefile:
cd cpp00/ex00 make -
Execute the program:
./Megaphone