A console-based Contact Management System built with C++ that allows users to store, search, update, and delete contact information. All contacts are saved in a file so the data persists even after the program is closed.
The Contact Management System is a simple yet practical C++ application designed to help users manage personal or professional contacts efficiently.
Each contact contains the following information:
- Name
- Phone Number
- Email Address
- Home Address
The program stores all contacts in a text file (contacts.txt), allowing users to retrieve their saved contacts whenever they run the program again.
This project demonstrates key programming concepts such as:
- Object-Oriented Programming (OOP)
- File Handling
- Dynamic Data Storage using Vectors
- String Searching
- Menu-Driven Applications
Add new contacts View all saved contacts Search contacts by name or phone number Edit existing contacts Delete contacts Automatic file saving Persistent storage using a text file
- C++
- Standard Template Library (STL)
- Vectors
- File Handling (
ifstream,ofstream) - Object-Oriented Programming
id="proj1" Contact-Management-System/ │ ├── main.cpp ├── contacts.txt └── README.md
- main.cpp → Contains the main application logic
- contacts.txt → Stores saved contacts
- README.md → Project documentation
id="compile1" g++ main.cpp -o contacts_app
id="run1" ./contacts_app
id="menu1" === CONTACT MANAGEMENT SYSTEM ===
- Add Contact
- View All Contacts
- Search Contact
- Edit Contact
- Delete Contact
- Exit Choose option:
id="example1" Enter Name: John Doe Enter Phone: 0551234567 Enter Email: john@example.com Enter Address: Accra, Ghana
Contact added successfully.
id="example2" Enter name or phone to search: John Name: John Doe Phone: 0551234567 Email: john@example.com Address: Accra, Ghana
This project demonstrates:
- Classes and Objects
- File input/output operations
- Vector data structures
- Search algorithms
- Menu-driven program design
- String manipulation
Future improvements could include:
- Sort contacts alphabetically
- Add contact profile pictures
- Export contacts to CSV
- Import contacts from files
- Add password protection
- Build a graphical user interface (GUI)
Amenyo Richard
Computer Science Student UI/UX Designer | Front-End Developer | Software Developer