Writing a new class that is derived from another class

Assignment Help Basic Computer Science
Reference no: EM13322349

Writing a new class that is derived from another class.You will be given the code for a Car class. Your job is to write a CustomCar class that is derived from Car and adds new features to it.The existing Car class will allow you to create a specific model of a car, but that car will always be the color black and have no features.

You need to create a CustomCar class. Put the specification for it in the CustomCar.h file and the implementation for it in the CustomCar.cpp file. The CustomCar class should extend the Car class and have the following new features:

  • It will need to have its own constructor. The constructor should simply call the Car constructor and then set the private features variable to be empty. See the book for an example.
  • It will need a SetColor method. This method should simply set the Car's color. The Car's color is a Protected variable. This means that the derived class can change it.
  • It will need a SetFeatures method. This method should set the features in a private variable of the CustomCar class
  • It will need to have a PrintInfo method. This method should call the existing Car PrintInfo method, and then print the features info after that
  • It will need to have a private features variable to store the text of the features

Test 1 checks for the output of the Red color Work on getting this working first.

Test 2 checks for the output of the features. Work on getting this working next.

Driver Program: Paste this into your main.cpp

// YOUR NAME HERE
#include <iostream>
#include <string>

#include "Car.h"
#include "CustomCar.h"

using namespace std;


Car *theCars[100];
int theCarsCount = 0;

void AddCarToList(Car* car){
    theCars[theCarsCount] = car;
    theCarsCount++;
}

void PrintCarList(){
    for(int i=0; i<theCarsCount; i++)
        theCars[i]->PrintInfo();
}
  

void main()
{
    // Use this code as is:
    
    cout << "Hello World!" << endl;
    Car *carA = new Car("Basic");
    Car *carB = new Car("Model-T");

    CustomCar *carC = new CustomCar("Sporty");
    carC->SetColor("Red");
    carC->SetFeatures("Sun-Roof & Leather Seats");
    
    AddCarToList(carA);
    AddCarToList(carB);
    AddCarToList(carC);
    
    PrintCarList();    

}

Here is the standard car.h class:

#include <iostream>

#include <string>

using namespace std;

class Car {

public:

Car(string model);virtual void PrintInfo();

protected:

string Model;string Color;};

Here is standard car.cpp:

#include "Car.h"

Car::Car(string model) {

Model = model;

Color = "Black";

}

void Car::PrintInfo() {

cout << "CAR INFO" << endl;

cout << " Model: " << Model << endl;

cout << " Color: " << Color << endl;

}

 

Reference no: EM13322349

Questions Cloud

Explain the emission spectrum of helium : In the emission spectrum of helium, there are strong lines at wavelengths of 447.1 nm, 501.6 nm, and 587.6 nm. Using the Balmer-Rydberg equation, determine the values of nf for each emission.
Compute the enthalpy change for the neutralization reaction : Calculate the enthalpy change for the neutralization reaction. Calculate the experimental error compared to the accepted your value in question 2.
The quantity of money in the hands of the public to increase : Why might the Fed find it significantly easier to expand the money stock in a period of prosperity than in a period of recession? What must the Fed be able to do if it wants the quantity of money in the hands of the public to increase?
Find the rms current in the circuit : In a purely inductive circuit of 36 mH, the freq is 71 Hz and the maxium voltage is 317 V. Find the rms current in the circuit
Writing a new class that is derived from another class : Writing a new class that is derived from another class.You will be given the code for a Car class. Your job is to write a CustomCar class that is derived from Car and adds new features to it.
How much oil spills : A copper flask with a volume of 80 cm^3 is filled to the brim with olive oil. If the temp of the system is increased from 8C to 52C, how much oil spills
Simulate the game of yahtzee : After displaying the possible scores for each category, ask the user which score to keep (it might not be the largest). Once the box is filled, it cannot be scored again.
Find how much work is done on the system : A cylnder holds .5 moles of an ideal gas at temp 334K. The gas expands isothermally from an initail volume of .03 m^3 to a final volume of .4m^3
Compute the after-tax cost : Assuming a 25 percent tax rate, compute the after-tax cost of the following business expenditures.

Reviews

Write a Review

Basic Computer Science Questions & Answers

  How do you print the rightmost element in a binary tree

How do you print the rightmost element in a binary tree?

  Can the capability also be used to install windows 7

What Windows Server 2008 capability enables them to do the mass installation quickly and efficiently? What general steps are involved in setting up this capability? Can the capability also be used to install Windows 7 on the 24 new client workstat..

  Describe the social implications of gaming

Within 500 words, describe the social implications of gaming. Besides entertainment, think of other aspect of our society that can be affected by gaming.

  Program to print astericks for every number that user enters

One interesting application of computers is drawing of graphs and bar charts (sometimes called histograms). Write down script which reads five numbers between 1 and 30.

  Write the string to the ofstream

Close the ifstream and ofstreams when finished. 9. Make sure that your program allows the user to encrypt / decrypt more than one file per session. This means adding a loop which allows the entire program to repeat until the user has nothing more ..

  Create class savingsaccount

Create class SavingsAccount. Use a static variable annualInterestRate to store the annual interest rate for all account holders. Each object of the class contains a private instance variable savingBalance indicating the amount that saver currently..

  Write recursive method prints out the digits reverse order

Write the code for a recursive method that accepts an integer argument and prints out the digits in reverse order

  Design a hashed file of words

Design a hashed file of words that could be used as a spell checker. What would you use as a hash function? Would your choice of a hash function depend on the language from which the words are chosen? Why should such a file not be stored as a sequent..

  Two problems in lisp

1. Define a function foo(A,L), where A is an integer and L is a list that will remove each A in L. This is a shallow function.

  What are the problems with the horizontal and vertical

What are the problems with the ‘‘horizontal'' and ‘‘vertical'' solutions to the handling of multiple relationships as described in the chapter?

  What would be the ieee 754 single precision binary represent

What would be the IEEE 754 single precision binary representation of the floating point value -314159265.3589? Express your final answer as an 8-hexdigit number and explain how your answer was obtained for full credit

  What project management practice

how would you determine its risks? • What project management practice, tool, or technique would be the most effective in mitigating that risk? Explain.

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