Ask Question, Ask an Expert


Ask C/C++ Expert

Home >> C/C++

problem 1) Background

Encapsulation and inheritance are two major concepts of object oriented programming, which are tested in this assessment.

Encapsulation allows:

1. Bundling of data and functions together

2. Access restrictions to certain components as defined by the programmer.

Hence when you prepare a class, you place data variables (like double, int, string) at the same place as you would place functions (including the constructor too – as constructors are special types of functions that are called when the object of the class is created).

Also you define public: protected: and private: “areas”, all of which have different access restrictions. Public members can be accessed from main(), which is interpreted or seen as the “outside world”. Private members can only be accessed by class itself, i.e., only the functions of that class might access the members. Codes from main() cannot access private members of a class.

Protected members might only be accessed by the class itself, and also its child classes (through inheritance). No one else in main() can access them.

Inheritance is demonstrated through several related classes. The parent class is a more GENERAL version of a child class. This means, the child class is a more SPECIFIC version of the parent class. Always check the validity of a child class by using the “… is a …” test.

You are assessed on:

1) understanding of encapsulation in the design of your classes;

2) understanding of inheritance;

3) writing useful comments

You require to prepare a main.cpp, appropriate .h (header files) and .cpp (source files), rather than writing all classes in the same file as main.cpp.


prepare the following five classes:

Animal, Dog, Cat, PetDog, StrayDog.

These are the properties of the above classes:

• They all have a name and an age each.

• They all can speak: the Dog barks and the Cat meows. (i.e., prepare a function called speak)

• However, the StrayDog’s speak function overrides the speak function of Dog, and it should say “woof woof”.

• The PetDog performs an action: “fetch a stick”; while the StrayDog performs another action: “chase cars”.

The speak and action functions simply display the words on the console.

Show encapsulation by writing appropriate functions (including constructors) and data members for the above classes.

For ex, you should inherit protected from the parent class, and then inherit private from the child class (to the grandchild).

In your main() program,

i. declare an array of seven animal pointers;

ii. instantiate (create) at least one objects from each of the five classes;

iii. point the animal array to the objects

iv. using a suitable loop, loop through all animal references (pointers) and

a. call the speak function of each animal; (genius task:)

b. call the action function, if the animal is a petdog or a straydog.

C/C++, Programming

  • Category:- C/C++
  • Reference No.:- M95500

Have any Question? 

Related Questions in C/C++

Please use codeblockslist the program and the output on the

Please use codeblocks List the program and the output on the command line Eg #include #include using namespace std; int main() { floatjohno = 0.5; size_t size = 24; vector array(size); for(inti=0; i     { johno = johno + ...

A write an array implementation of self-adjusting lists in

a. Write an array implementation of self-adjusting lists. In a self-adjusting list, all insertions are performed at the front. A self-adjusting list adds a find operation, and when an element is accessed by a find, it is ...

Programming assignment- in this assignment you are

Programming Assignment- In this assignment you are requested to write a C++ program that displays the following colored pyramid on the screen: - The pyramid is 71 characters wide and 21 characters high. - To draw it, you ...

Here are two examplesifcounter7continueifcounter7break1

Here are two examples: if(counter==7) continue; if(counter==7) break; 1. Write a for loop that counts only the odd numbers out of the first five numbers entered from the keyboard, but does not count (skips) the number 7. ...


Write a C++ program that will use loops to perform each of the following tasks: 1. Ask the user for two characters from the keyboard and read them into char variables. Determine which input is larger and which is smaller ...

Programming assignment-1 program specification1 your

Programming Assignment- 1. Program Specification 1. Your program must read 8-bit ASCII strings from standard input -- for instance, using the cin object in C++, or stdin in C. You must consume all input from standard inp ...

Discussion questionsplease respond to all of the following

Discussion Questions Please respond to all of the following prompts: • What is a friend function and how is it declared? • Which operators cannot be overloaded and why? • What is a macro in C++ programming and what are s ...

Write an application that allows the user to enter two

Write an application that allows the user to enter two variables: number (real) and code (character). Calculate the value indicated by the table below: If code is Result A symbol the whole part of the number everything e ...

C program codeoverviewfor this assignment write a program

C++ program code Overview For this assignment, write a program that will simulate a single game of Craps. Craps is a game of chance where a player (the shooter) will roll 2 six-sided dice. The sum of the die will determi ...

Write code to create the generator submit your source code

Write code to create the generator. Submit your source code as well as a description of how I could run the program, sample screenshots of the program in action, and the various changes that could be produced through you ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

A cola-dispensing machine is set to dispense 9 ounces of

A cola-dispensing machine is set to dispense 9 ounces of cola per cup, with a standard deviation of 1.0 ounce. The manuf

What is marketingbullwhat is marketing think back to your

What is Marketing? • "What is marketing"? Think back to your impressions before you started this class versus how you

Question -your client david smith runs a small it

QUESTION - Your client, David Smith runs a small IT consulting business specialising in computer software and techno

Inspection of a random sample of 22 aircraft showed that 15

Inspection of a random sample of 22 aircraft showed that 15 needed repairs to fix a wiring problem that might compromise

Effective hrmquestionhow can an effective hrm system help

Effective HRM Question How can an effective HRM system help facilitate the achievement of an organization's strate