Answered step by step
Verified Expert Solution
Question
1 Approved Answer
You need to put the class implementations, the class declarations, and the client code in their respective files. You need to use proper macros to
You need to put the class implementations, the class declarations, and the client code in their respective files. You need to use proper macros to avoid including the same .h more than once.
The goal of this project is for you to practice designing and implementing classes in C++, and implementing and using the Singleton design pattern. Student Report Card with Logging You are to design and implement a Student class, a Grade class, as well as a Logger class implemented as a Singleton. Then you will write some client tests in main() to demonstrate the output. Student Class - You need to implement the big three: Destructor, Copy Constructor, and operator=. - Your class needs to provide the following data members: - id, int, needs to be unique - name, string - grades, vector - Your class needs to provide the following member functions: - int calculateFinal(), returns a value from 0-100 - string calculateLetterGrade(), returns a string representation of the NKU letter grade ( A+,B, etc). - string printReport(), returns a string report - Standard Accessors and Mutators, and any private helper functions - Each class must use the same instance of your logger, in each method, to print to the command line what the return value of the method will be. - This class needs to provide the following data members: - pointsEarned, int - totalPoints, int - weight, double - assignment, string Logger Class - You need to make this a proper singleton. - Your class needs to provide the following member function: - void log(string output), prints the contents to cout. main() - You need to devise a set of "tests" in main() to exercise both the Student class and your Logger singleton. I will leave how you test up to you, but I expect a certain minimum amount of rigor in testing the code inside of the Student Class. I will have additional tests that I will use to evaluate your implementation. - The same logger should log inside of each Student class, as well as the testsStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started