p396 12.1 类的进一步讨论 王峰.cpp

来自「谭浩强 《C++ 程序设计》第三版的部分课后练习题源码」· C++ 代码 · 共 76 行

CPP
76
字号
#include<iostream.h>
#include<windows.h>
//using namespace std;
class Point
{
	friend istream &operator>>(istream &,Point &);
	friend ostream &operator<<(ostream &,Point &);
      public:
             Point(float a=0,float b=0):x(a),y(b){}
      private:
              float x;
              float y;
}; 

     
     
istream &operator>>(istream &input,Point &p)
{
        cout<<"please input the x,y: ";
        cin>>p.x>>p.y;
        return input; 
}         
        
ostream &operator<<(ostream &output,Point &p)
{
        cout<<"the x="<<p.x<<"   the y="<<p.y<<endl;
        return output; 
} 

class Circle:public Point
{
	friend istream & operator>>(istream &input,Circle &c);
	friend ostream & operator<<(ostream &output,Circle &c);
      private:
              float r;
              
      public:
             Circle(float x=0,float y=0,float r=0):Point(x,y),r(r){}
              
};      
      
istream & operator>>(istream &input,Circle &c)
{
      /*  cout<<"please input the x,y,r: ";
        input>>Point(c);
        input>>c.r;*/
	float a,b,cc;
	input>>a>>b>>cc;
	Circle d(a,b,cc);
	c=d;
        return input; 
}         
        
ostream & operator<<(ostream &output,Circle &c)
{
        output<<Point(c);
        output<<"the r="<<c.r<<endl; 
        return output; 
}       

int main() 
{/*
    Point p;
    cin>>p;
    cout<<p;
    */
    Circle c;
    cin>>c;
    cout<<c;
    system("pause");
    return 0;
    
    
    
}                   

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?