1.3c. Pure Abs\ act Bast Class Project Define a pure abstract base class ca lled
ID: 3658287 • Letter: 1
Question
1.3c. Pure Abs act Bast Class Project Define a pure abstract base class ca lled BasicShape. The Baaicshape class should have the following members: Private Member Variable: area, a double used to hold the shape's area. Public Member Functions: getArea. This function should rerum the value in the member variable area. calcArea. This function should be a pure virrual function. Next, define a class named Circle. It should be derived from the Basicshape class. It should have the fo llowing members: Private Member Variables: centerX, a long integer used to hold the x coordinate of the circle's center. centerY, a long integer used to hold the y coordinate of the circle's center. radius, a double used to hold the circle's radius. Public Member Functions: constructor-accepts values for centerX, centerY, and radius. Should call the overridden calcArea function described below. getCenterx-returns the value in centerX. getCenterY-rerurns the value in centerY. calcArea---calculates the area ofthe circle (area = 3.14159 .... radius .... radius) and stores the resu lt in the inherited member area. Next, define a class named Rectangle. Ir should be derived from the BasicShape class. I[ should have [he following members: Private Member Variab les: width, a long integer used to hold the width of the rectangle. length, a long integer used to hold the length of the rectangle. Public Member Functions: constructor-accepts va lues for width and length. Should call the overridden calCArea function described below. get'Width-returns the value in width. getLength- returns the value in length. calCArea-calculates the area of the rectangle (area = length " width) and stores the rcsulr in the inherited member area. After you have created these classes, create a driver program that defines a Circle object and a Rectangle object. Demonstrate that each object properly calculates and reports its area.Explanation / Answer
class BasicShape { private: double area; public: double getArea() {return area;} virtual double calcArea() = 0; }; class Circle : public BasicShape { private: long int centerX, centerY; double radius; };
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.