Create a factory function and constructor, Computer Engineering

Assignment Help:

1) This project will use an account class that has the members:

string account_code;

string first_name;

string last_name;

double balance;

Provide a constructor that initializes ALL members in its initialization list with data passed in as arguments to the constructor.  You will also need accessor functions to get the account code and balance and to set the balance.

In addition, include two pure virtual functions that look like the following:

virtual void monthly_update() = 0;

virtual char type() = 0;

2) Design and implement the following derived classes that will inherit from account and implement the monthly_update function in the following manner: 

2058_Create a factory function.png

If the type is an 'X', skip the account record.  In other words, the account should not be processed by the rest of the program and should not appear in the result.

If the type is anything else, throw an invalid_account_type exception (that you will have to write), but DO NOT stop processing the rest of the accounts.  Instead, log the account to a file named "account.log". Trim spaces from the right of the first_name and last_name members.

4) Write a manager class that has a vector member and a main function.  In the main function, open an ifstream on the file, "account2.dat", which will be supplied to you.  If the file does not exist, throw a file_not_found exception (that you will have to write) and terminate the program after logging this to the "account.log" file.

5) For each account in the input file, invoke the factory function/class written in part

3)  Each object returned from the factory function will then be inserted into the vector. 

1874_Create a factory function1.png

If the account is to be ignored, or if the factory function throws an invalid_account_type exception, no account should be inserted into the vector (let alone even created).  At the end of the stream, proceed with part 6.

6) Iterate through the vector and invoke the monthly_update function for each account in the vector.

7) Using an ofstream, output each account to a new file named "update.dat" in the SAME format as "account2.dat".

8) Output the accounts in a "human readable format" to a file, "report.txt".  The output format is of your choice, but please include all the members of each account per line (including the type).

9) Write a main function that instantiates your manager class from part 4, invokes its main and takes care of any exceptions that could possibly "leak" out.


Related Discussions:- Create a factory function and constructor

Design a simple digital clock., Use a timer interrupt to design a easy digi...

Use a timer interrupt to design a easy digital clock.  This clock will count only minutes and seconds, and start at 00:00 every time your program starts.  The show on the screen sh

Differentiate between at and xt computer system, Differentiate between AT a...

Differentiate between AT and XT computer system? Ans    XT -> Extended and AT->Advanced Technology Some differences between PC and XT include the type of power supply initia

Control dependence, Control Dependence Segments or Instructions in a pr...

Control Dependence Segments or Instructions in a program may obtain control structures. Thus, dependency between the statements can also be in control structures. But the order

Two "next screen "attributes, Of the two "next screen "attributes the attri...

Of the two "next screen "attributes the attributes that has more priority is?? Dynamic.

Explain the fetch cycle, Q. Explain the Fetch Cycle? The beginning of e...

Q. Explain the Fetch Cycle? The beginning of every instruction cycle is the fetch cycle and causes an instruction tobe fetched from memory.   The fetch cycle comprises four

Differentiate between protected and real modes of an intel, Differentiate b...

Differentiate between protected and real modes of an Intel microprocessor Operation of Real mode interrupt: When microprocessor completes executing the current instruction, it

Could tcp allow ip to checksum the data, Could TCP allow IP to checksum the...

Could TCP allow IP to checksum the data? TCP cannot permit IP to checksum data yet IP has its own checksum for its header. IP layer is fundamentally responsible for routing of

What is an activex interface, An ActiveX interface is a group of linked fun...

An ActiveX interface is a group of linked functions that are grouped together

Display data in a repeater control, Which template must you provide, in ord...

Which template must you provide, in order to display data in a Repeater control? ItemTemplate.To display data in the ItemTemplate, declare one or more Web server controls and s

Concurrently read concurrently write, Q. Concurrently read concurrently wri...

Q. Concurrently read concurrently write? It is one of the models derived from PRAM. In this model the processors access the memory locations simultaneously for reading and writ

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd