$29
Teams: None, please work individually on this project.
Note: This project requires C++11 support. The eclipse starter project has this configured correctly.
Assignment
As described in class you are going to model a public library using the starter project located on the course projects page.
Target Platform
Linux 18.04 with the GNU toolchain.
fileIO.cpp and library.cpp
fileIO.h and library.h define and describe multiple functions. Please provide definitions for these functions in fileIO.cpp and library.cpp.
Please note, you are required to use vectors to hold the book and patron objects described in datastructures.h. These vectors should be declared and used in library.cpp.
Model_A_Library.cpp
You will find file Model_A_Library.cpp in the src folder. This file serves as a tester for fileIO.cpp and library.cpp.
constants.h
Note the BOOKFILE and PATRONFILE constants. These are the names of the files where you should serialize books and patrons. BOOKFILE_EMPTY and PATRONFILE_EMPTY are empty files. Initial versions of these files can be found in the dont_alter_these_files directory. The function reset_books_patrons() in Model_A_Library.cpp uses these initial versions to reset the files used for fileIO testing in testfileIO() to a known state for each run of the program.
Grading
As long as you attempt the project:
5% - correctly submit project
95% - as listed in console when project is executed
To Turn In
Please turn in only the following files. Please do not zip them together.
fileIO.cpp
library.cpp
I will embed them in my project for testing. This also means that I will not see any changes you make to any files except for those 2.