Advanced C++14 simulator built without STL — custom linked lists, the command pattern, manual memory management, and Valgrind-verified zero leaks.
A fully-functional C++14 vending machine for a fictional pastry company, focused on robust programming, clean code, and dynamic memory management. Operates entirely in a console environment with persistent file-backed storage.
new/delete verified leak-free with ValgrindprintLL, findItem, saveLL, resetStock, remove, addLL, and deleteLLDisplay inventory ascending/descending, add items, remove stock, and track availability.
Exact-change, insufficient-funds detection, out-of-stock handling, and transaction abort.
Eight denominations (5¢ – $10) with a greedy change-dispensing algorithm.
Validated stock.dat / coins.dat with strict format checking.
Reset coins, restock, reverse-display inventory, and abort transactions.
Toggle between single and doubly linked lists at runtime via the strategy pattern.