"Master the essentials of C++ programming and project development."
Introduction
Important Guidelines
0. CPP00 (C++ - single project)
1. CPP01 (C++ - single project)
2. CPP02 (C++ - single project)
3. CPP03 (C++ - single project)
4. CPP04 (C++ - single project)
5. CPP05 (C++ - single project)
6. CPP06 (C++ - single project)
7. CPP07 (C++ - single project)
8. CPP08 (C++ - single project)
9. CPP09 (C++ - single project)
Developed Skills
Support and Contributions
Author
In this repository, you will find a collection of projects that cover various aspects of C++ programming. Each project is designed to help you master different concepts and techniques in C++ development. Whether you are a beginner or an experienced programmer, these projects will provide you with valuable hands-on experience and enhance your skills.
Feel free to explore the projects and dive into the world of C++ programming. Happy coding!
To successfully complete the CPP projects, you must adhere to the following guidelines:
- The projects must be compiled with the C++98 standard and using the flags:
-Wall -Werror -Wextra
. - Follow the naming conventions for folders, exercises, classes, functions, and files.
- Write class names in UpperCamelCase format. Files containing class code should be named according to the class name. For example:
ClassName.hpp
/ClassName.h
ClassName.cpp
ClassName.tpp
- If you have a header file containing the definition of a class
BrickWall
representing a brick wall, its name should beBrickWall.hpp
.
- Unless specified otherwise, every output message must end with a newline character and be displayed to the standard output.
- You can use your own coding style (no NORMINETTE), but ensure your code is readable for peers. You can use everything from the standard library.
- You must not use external libraries such as CPP11 and derived forms, or Boost libraries. It is also forbidden to use
*printf()
,*alloc()
, andfree()
. - Unless explicitly stated otherwise, the
using namespace <ns_name>
andfriend
keywords are forbidden. - You are allowed to use the STL in Modules 08 and 09 only. This means no containers (e.g.,
vector
,list
,map
) and no algorithms (anything that requires including the<algorithm>
header) until then. - When you allocate memory (using the
new
keyword), you must avoid memory leaks. - From Module 02 to Module 09, your classes must be designed in the Orthodox Canonical Form, except when explicitly stated otherwise.
- Any function implementation placed in a header file (except for function templates) will result in a score of 0 for the exercise.
- You should be able to use each of your headers independently from others. Thus, they must include all the dependencies they need. However, you must avoid the problem of double inclusion by adding include guards.
0. CPP00 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
1. CPP01 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
2. CPP02 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
3. CPP03 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
4. CPP04 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
5. CPP05 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
6. CPP06 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
7. CPP07 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
8. CPP08 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
9. CPP09 (C++ - single project)
Status: Coming Soon
Evaluation Length = 15/30 Mins
| 3 Peers
If you find this repository helpful, please consider starring it to show your support. Your support is greatly appreciated!