实践六

1

#pragma once
#include<iostream>
using namespace std;
class Base {

public:
    Base(int a, int b) :m(a), n(b) {};
    int add() {
        cout << "m+n=" << m + n << endl;
        return m+n;
    }
    int getm()const { return m; }
    int getn()const { return n; }
private:
    int m;
    int n;
};



class A :public Base {
public:
    A(int a, int b) :Base(a, b) {};
    int minus() {
        int x = getm();
        int y = getn();
        cout << "m-n=" << x - y << endl;
        return x-y;
    }
};
class B :public Base {
public:
    B(int a, int b) :Base(a, b) {};
    int multiply() {
        int x = getm();
        int y = getn();
        cout << "m*n=" << x * y << endl;
        return x*y;
    }
};
class C :public Base {
public:
    C(int a, int b) :Base(a, b) {};
    int divide() {
        int x = getm();
        int y = getn();
        cout << "m/n=" <<( x )/( y )<< endl;
        return x/y;
    }
};
#include"base.h"
#include<iostream>
using namespace std;
int main() {
    int x,y;
    cout<<"输入x,y"<<endl;
    cin>>x>>y;
    A a(x,y );
    B b(x,y); 
    C c(x,y);
    a.add(); 
    a.minus();
    b.add();
    b.multiply();
    c.add();
    c.divide();
    return 0;
}

2

#pragma once
#include<iostream>
using namespace std;

class vehicle {            
public:                                                         //外部接口
    vehicle(int a, int b) :maxspeed(a), weight(b) {             
    cout<<"maxspeed="<<maxspeed<<endl<<"weight="<<weight<<endl;};
    void run() {
        cout << "run" << endl;
    }
    void stop() {  
        cout << "stop" << endl;
    }
    ~vehicle() {}
private:
    int maxspeed;//变量
    int weight;
};

class bicycle :virtual public vehicle {        
public:                                                         
    bicycle(int a, int b, int c) :vehicle(a, b) {
         height=c;
        cout << "height=" << height << endl;
    }
    ~bicycle() {}
private:
    int height;//新增变量
};

class motorcar :virtual public vehicle {    
public:                                                          
    motorcar(int a, int b, int d) :vehicle(a, b) {
        seatnum=d;
        cout << "seatnum=" << seatnum << endl;
    }
    ~motorcar() {}
private:
    int seatnum;
};

class motocycle :public bicycle, public motorcar {
public:                                                         
    motocycle(int a, int b, int c, int d) :vehicle(a, b), bicycle(a, b, c), motorcar(a, b, d) {};
    ~motocycle() {}
};
#include<iostream>
#include"vehicle.h"
using namespace std;
int main() {
    int a,b,c,d;
    cin>>a>>b>>c>>d;
    bicycle A(a, b, c);
    A.run();A.stop();
    motorcar B(a,b,c);
    B.run(); B.stop();
    motocycle C(a,b,c,d);
    C.run(); C.stop();
    return 0;
}

posted @ 2018-06-07 21:29  bhys  阅读(112)  评论(0编辑  收藏  举报