Code Monkey home page Code Monkey logo

42_cpp_modules's Introduction

CPP Modules

๐Ÿ“’ About

This repository contains all the C++ piscine-like projects of rank 04 and rank 05. The goal of these projects is to learn the basics of C++ and Object Oriented Programming (OOP).

๐Ÿšจ Disclaimer

At 42, the C projects are built following a bunch of rules that enforce good coding style. Some of them are:

- No for, do while, switch, case or goto are allowed
- No more than 25 lines per function and 5 functions per file
- No assigns and declarations in the same line (unless static)
- No more than 5 variables in 1 function
... 

๐Ÿ”ง Implementation

Module Name About Grade
CPP00 The principles of OOP, static and const modifiers โœ… 100/100
CPP01 Dynamic allocation, member function pointers and switch statement โœ… 100/100
CPP02 Operator overloading and Orthodox Canonical Form โœ… 100/100
CPP03 OOP: Inheritance โœ… 100/100
CPP04 OOP: Polymorphism, Abstract Classes and Interfaces โœ… 100/100
CPP05 Exceptions โœ… 100/100
CPP06 C++ casts โœ… 100/100
CPP07 Templates โœ… 100/100
CPP08 Templated STL containers and algorithms โœ… 100/100
CPP09 STL containers โœ… 100/100

๐Ÿ“ฆ Compilation

Each module contains several exercises, each one with its own Makefile. To compile the exercises, just run make inside the exercise folder and an executable will be created. To clean up the folder and remove the executable, run make clean.

๐Ÿ“ž Contact me

Feel free to ask me any questions through Slack (ncarvalh).

42_cpp_modules's People

Contributors

nuno-jesus avatar

Watchers

 avatar

42_cpp_modules's Issues

CPP09-ex00: vulnerable against out-of-range dates

Given the dataset:

2009-01-02,0
2009-01-05,0
2009-01-08,0
2009-01-11,0
2009-01-14,0
2009-01-17,0

...

2022-03-16,41133.08
2022-03-19,42222.32
2022-03-22,42372.67
2022-03-25,44334.33
2022-03-29,47115.93

... any older or newer dates fall out of the scope. If so happens, I need to redirect the program flow to find the minimum or maximum date.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.