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

Interface constructors, Describe a interface 'Human' with methods as walk' ...

Describe a interface 'Human' with methods as walk' and 'speak'. Describe a class 'User' implementing 'Human'. Describe a work() method in User class.Add a class 'Person' also execu

What are the features of client/server computing, What are the features of ...

What are the features of Client/Server Computing? Although there are several different configurations, different hardware and software platforms and even dissimilar network pro

Determine about the pick device, Determine about the Pick Device Light ...

Determine about the Pick Device Light Pens The light pen used to select screen positions by detecting the light coming from points on the CRT screen. These are sensitive to

Why does ipv6 use separate extension headers, Why does IPV6 use separate ex...

Why does IPV6 use separate extension headers? Explain. The extension headers in Ipv6 are utilized for economy and extensibility. Partitioning the datagram functionality in sepa

Android projects, how should I do connectivity with google play for my andr...

how should I do connectivity with google play for my android GSM based project

Which method uses the greatest number of layers in OSI model, Which method ...

Which method uses the greatest number of layers in the OSI model? Gateway utilizes the greatest number of layers into the OSI model.

Illustrate the working of encoders, Q. Illustrate the working of Encoders? ...

Q. Illustrate the working of Encoders? An Encoder performs reverse function of decoder. An encoder has 2n input lines and 'n' output line. Let's see 8 ×3 encoder that encodes 8

Show the noframes tag, Q. Show the Noframes Tag? tag can be used for t...

Q. Show the Noframes Tag? tag can be used for those browsers which aren't able to interpret tags. Even though most, if not all, of your visitors would

Mips - computer architecture, MIPS - computer architecture: The MIPS ...

MIPS - computer architecture: The MIPS ISA, so far 3 instruction formats Fixed 32-bit instruction 3-operand, load-store architecture 32 general-purpose register

Which analysis finds syntactic structure of source statement, An analysis, ...

An analysis, which determines the syntactic structure of the source statement, is called ? Ans. Syntax analysis that determines the syntactic structure of the source statement.

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