Skip to content

RTrinkleDev/CPP-Bank-Account-Simulator

Repository files navigation

CPP Bank Account Simulator A C++ console‑based banking system designed to demonstrate strong understanding of object‑oriented programming, inheritance, polymorphism, and clean multi‑file architecture. This project simulates real‑world banking behavior through separate account types, transaction handling, and monthly processing logic.

🧠 Skills Demonstrated Object‑Oriented Programming (OOP)

Class design & abstraction

Inheritance & polymorphism

Virtual functions & dynamic dispatch

Encapsulation & data protection

Multi‑file C++ project structure

Input validation & error handling

Menu‑driven user interface design

🎯 Why I Built This Project This project was originally created as a class assignment, but I used it as an opportunity to push my understanding of object‑oriented programming in C++ beyond the minimum requirements.

Banking systems are a natural fit for OOP because they involve:

Shared behavior across account types

Specialized rules (fees, interest, limits)

Clear class hierarchies

Realistic constraints and state changes

Building this simulator helped me practice designing clean, extensible software that models real‑world behavior while reinforcing core C++ concepts.

📚 Features Base Account class with shared functionality

Derived SavingsAccount and CheckingAccount classes

Polymorphic behavior for withdrawals and monthly processing

Menu‑driven console interface

Realistic banking rules:

Withdrawal limits

Service charges

Interest calculations

Balance tracking

Organized multi‑file architecture

📁 Project Structure Code src/ │── Account.h │── SavingsAccount.h │── CheckingAccount.h │── BankAccount.h │── BankAccountProject.cpp

✔️ Summary This project demonstrates real OOP design in C++ with a clean class hierarchy, polymorphic behavior, and a functional banking simulation. It’s structured to be readable, extensible, and representative of real‑world software engineering practices.

About

A C++ banking simulation demonstrating OOP, inheritance, polymorphism, and menu-driven user interaction.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages