Skip to content

C++ is a cross-platform language that can be used to create high-performance applications. C++ was developed by Bjarne Stroustrup, as an extension to the C language. C++ gives programmers a high level of control over system resources and memory. The language was updated 4 major times in 2011, 2014, 2017, and 2020 to C++11, C++14, C++17, C++20.

License

Notifications You must be signed in to change notification settings

TebogoYungMercykay/Object_Orientated_Programming_in_CPP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C++ Object-Oriented Programming Projects

Welcome to the C++ Object-Oriented Programming Projects repository! This collection showcases a variety of C++ projects that demonstrate core object-oriented programming (OOP) concepts, data structures, and algorithms. These projects are ideal for learners looking to deepen their understanding of C++ and OOP principles.

Requirements

Before running the C++ code, ensure you have the following set up:

  • IDE Recommendation: Install an IDE that supports C++ compilation and execution, such as Visual Studio Code.
  • Setting up WSL Ubuntu terminal: Follow this guide to set up WSL on Visual Studio Code for a Linux-based terminal environment.
  • Compiler Path Configuration: If you encounter issues with compiler paths in VS Code, refer to this forum discussion for troubleshooting steps.

Projects

  • Access Control Device: Implements a simulated access control system.
  • BinaryHeap.cpp: Demonstrates the implementation of a binary heap data structure.
  • Calculator Simulation Using Stacks: A calculator application utilizing stack data structures.
  • Chess Imitation (Mate in One): Simulates a chess endgame scenario focusing on mate-in-one situations.
  • Classes and Array of Objects: Showcases the use of classes and arrays of objects in C++.
  • Doubly Linked List: Implementation of a doubly linked list data structure.
  • Encryption and Decryption: A program demonstrating basic encryption and decryption techniques.
  • Genetic Algorithm: An implementation of a simple genetic algorithm.
  • Linear Data Structures: Examples of various linear data structures in C++.
  • Linked Lists and Recursion: Demonstrates the use of linked lists with recursive algorithms.
  • Matrices: Operations and manipulations on matrices.
  • Neural Networking: A basic implementation of a neural network.
  • Operator Overloading: Examples of operator overloading in C++.
  • Operator Overloading and Inheritance: Combines concepts of operator overloading with inheritance.
  • Pointers to Objects: Demonstrates the use of pointers with objects in C++.
  • Polymorphism: Examples showcasing polymorphism in C++.
  • Singly Linked List: Implementation of a singly linked list data structure.
  • Template Classes and Vectors: Demonstrates the use of template classes and vectors in C++.

Makefile

A Makefile is provided to simplify the process of compiling and running the C++ code via the terminal.

  • Makefile Commands:

    • make: Compiles the .cpp files and generates an executable named main.
    • make run: Runs the executable using valgrind to check for memory leaks.
    • make clean: Removes the executable and object files, and clears the terminal.
    • make tar: Compresses the source files and the Makefile into a .tar.gz archive.
    • make untar: Extracts files from the .tar.gz archive.
  • Makefile

     main:
     	g++ -g *.cpp -std=c++98 -pedantic -o main
    
     clean:
     	rm -f *.o *.tar.gz main
     	reset
     	clear
    
     run:
     	valgrind --leak-check=full ./main
    
     tar:
     	tar -cvz *.* -f Code.tar.gz
    
     untar:
     	tar -zxvf *.tar.gz

Contributing

This project is primarily for personal learning and demonstration purposes. However, if you have suggestions for improvements, feel free to open an issue or submit a pull request.

To contribute:

  1. Fork the repository.
  2. Create a new branch for your feature or fix.
  3. Commit your changes.
  4. Submit a pull request with a clear description.

License

This project is open source. Please refer to the repository for specific license details.


About

C++ is a cross-platform language that can be used to create high-performance applications. C++ was developed by Bjarne Stroustrup, as an extension to the C language. C++ gives programmers a high level of control over system resources and memory. The language was updated 4 major times in 2011, 2014, 2017, and 2020 to C++11, C++14, C++17, C++20.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy