Ask Question, Ask an Expert

+1-415-315-9853

info@mywordsolution.com

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.
Instructions

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.

Tasks

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++

A compiler that translates a high-level language into

A compiler that translates a high-level language into another high-level language is called a source-to-source translator. What advantages are there to using C as a target language for a compiler?

Programming assignment 5write a c program that allows the

PROGRAMMING ASSIGNMENT #5 Write a C program that allows the user to make some banking transactions. The program should first prompt the user to enter the current balance of his/her bank account (in dollars and cents, not ...

Computer applications divisionassignment c programmingstl

COMPUTER APPLICATIONS DIVISION Assignment: C++ PROGRAMMING STL Vector For this assignment, you will be starting with an example program that demonstrates the use of a STL vector. In addition to this, you may need to look ...

Create your own unique while-end repetition structure you

Create your own unique While-End repetition structure. You decide the theme. You should provide both the pseudocode and the flowchart of your example. Be sure to provide an overview of what your repetition structure is d ...

Assignmentthis is the programthis program will use 2

Assignment This is the program: This program will use 2 different data structures to perform the same tasks; a vector and a dynamically sized array Write a complete C++ program that will: Declare a vector of integers wit ...

Writing a c code its a beginner level code design a class

Writing a C++ code, its a beginner level code. Design a class house that defines a house on a street. A house has a house number and an (x,y) location, where x and y are numbers between -10 and 10. the key member is plot ...

Assignmentthis assignment gives you the opportunity to

Assignment This assignment gives you the opportunity to practice array of pointers, linked lists and self referential structures. Write a program that initializes two parallel arrays as follows: char * String[] = { "Abbi ...

Discussionobject-oriented design please respond to the

Discussion "Object-Oriented Design" Please respond to the following: • Suppose you were required to write a C++ program that captures and stores data about automobiles that a small dealership in your city sells. Consider ...

Write a c program that calculates and prints the average of

Write a C program that calculates and prints the average of two or more salaries entered by the user. The program should first prompt the user to enter the number of salaries to process (make sure: at least 2 salaries mu ...

Programming assignment image processing - pointers class

Programming Assignment: Image Processing - Pointers, Class & Dynamic Data This project is called "Image Processing" which will shrink an input image, convert a color image to gray image , add random noise to an image, ad ...

  • 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

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro

Describe what you learned about the impact of economic

Describe what you learned about the impact of economic, social, and demographic trends affecting the US labor environmen