码迷,mamicode.com
首页 > 其他好文 > 详细

实验6 类的继承和多态

时间:2018-06-07 21:50:33      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:pac   return   max   virt   ios   minus   技术   out   多态   

//6-1
#include <iostream> using namespace std; class A{ public: A(int a,int b):m(a),n(b){} int add(){ cout<<"m+n= "<<m+n<<endl; } private: int m,n; }; class B:public A{ public: B(int a,int b):A(a,b){ m=a; n=b; } int minus(){ cout<<"m-n= "<<m-n<<endl; } private: int m,n; }; class C:public A{ public: C(int a,int b):A(a,b){ m=a; n=b; } int multiply(){ cout<<"m*n= "<<m*n<<endl; } private: int m,n; }; class D:public A{ public: D(int a,int b):A(a,b){ m=a; n=b; } int division(){ cout<<"m/n= "<<m/n<<endl; } private: int m,n; }; int main(){ B b(30,15); b.add(); b.minus(); C c(30,2); c.add(); c.multiply(); D d(30,3); d.add(); d.division(); return 0; }

技术分享图片

 

 

//6-2
#include <iostream>
using namespace std;
class vehicle{
    public:
        vehicle(int m,int w):maxspeed(m),weight(w){
            cout<<"maxspeed= "<<maxspeed<<endl;
            cout<<"weight= "<<weight<<endl;
        }
        ~vehicle(){}
        void run(){
            cout<<"run"<<endl;
        }
        void stop(){
            cout<<"stop"<<endl;
        }
    private:
        int maxspeed,weight;
}; 
class bicycle:virtual public vehicle{
    public:
        bicycle(int m,int w,int h):vehicle(m,w){
            height=h;
            cout<<"height is:"<<height<<endl;
        }
        ~bicycle(){}
    private:
        int height;
};
class motorcar:virtual public vehicle{
    public:
        motorcar(int m,int w,int s):vehicle(m,w){
            seatnum=s;
            cout<<"seatnum is "<<seatnum<<endl;
        }
        ~motorcar(){}
    private:
        int seatnum;
};
class motorcycle:public bicycle,public motorcar{
    public:
        motorcycle(int m,int w,int h,int s):vehicle(m,w),motorcar(m,w,s),bicycle(m,w,h){}
        ~motorcycle(){}
};
int main(){
    vehicle v(150,100);
    v.run();
    v.stop();
    motorcar a(100,75,2);
    a.run();
    a.stop();
    bicycle b(50,30,1);
    b.run();
    b.stop();
    motorcycle c(100,50,1,2);
    c.run();
    c.stop();
    return 0;
}

 

 技术分享图片

 

实验6 类的继承和多态

标签:pac   return   max   virt   ios   minus   技术   out   多态   

原文地址:https://www.cnblogs.com/perservence/p/9152700.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!