Expand|Select|Wrap|Line Numbers
- /*The following program have the following output. write the necessary code to make it works?
- Code :*/
- //-----------------------------------------------------------------------------------------------------
- #include <iostream>
- using namespace std;
- class Point
- {
- private:
- int x;
- int y;
- public:
- Point(void);
- Point(int newx, int newy);
- Point( Point& from );
- ~Point(void);
- Point operator++() {inc(); return *this;}
- Point operator--() ;
- friend ostream& operator<<(ostream& out, Point p);
- void inc();
- void setX(int newX);
- void setY(int newY);
- inline int getX(){return x;}
- inline int getY(){return y;}
- };
- class Circle: public Point
- {
- float rad;
- public:
- Circle():Point(0,0), rad(0)
- {cout<<"Running Circle Default Contstructor"<< endl;}
- Circle(int a, int b, int c): Point(a, b), rad(c)
- {cout<<"Running Circle Normal Contstructor"<< endl;}
- Circle(Circle & from);
- Circle(Point & p);
- float getArea();
- float getRad();
- friend ostream& operator<<(ostream& out, Circle c);
- };
- main()
- {
- char a;
- {
- cout << "Write Your Name Here " << std::endl;
- Point p(5,7);
- Point r;
- Point q(p);
- ++p;
- cout<< q << p;
- r=q;
- --r;
- Circle c1(3, 5, 3), c2(p);
- cout << c1 << c2;
- }
- cin>>a;
- }
Point construction using constructor
[5 ,7]
Point construction using default constructor
Point construction using Copy constructor
[5 ,7]
Point construction using Copy constructor
[6 ,8]
[6 ,8]Point destruction
Point construction using Copy constructor
[6 ,8]
Point construction using Copy constructor
[5 ,7]
Point: [5, 7]
Point: [6, 8]
[5 ,7]Point destruction
[6 ,8]Point destruction
Point construction using Copy constructor
[4 ,6]
[4 ,6]Point destruction
Point construction using constructor
[3 ,5]
Running Circle Normal Contstructor
Point construction using default constructor
Circle construction using Conversion constructor
Circle: [6 ,8], Radius=0
Point construction using default constructor
Circle construction using Copy constructor
Circle: [6 ,8], Radius=0
Point construction using default constructor
Circle construction using Copy constructor
Circle: [3 ,5], Radius=3
Circle: [3 ,5], Radius=3 Area=28.26
Circle: [6 ,8], Radius=0 Area=0
[3 ,5]Point destruction
[6 ,8]Point destruction
[6 ,8]Point destruction
[3 ,5]Point destruction
[5 ,7]Point destruction
[4 ,6]Point destruction
[6 ,8]Point destruction