开闭原则
#define _CRT_SECURE_NO_WANRINGS
#include<iostream>
using namespace std;
class AbstractCaculator{
public:
virtual int getresult() = 0;
};
class addAbstractCaculator:public AbstractCaculator{
public:
addAbstractCaculator(int a, int b) : ma(a), mb(b){}
virtual int getresult(){
return this->ma + this->mb;
}
public:
int ma;
int mb;
};
class declineAbstractCaculator:public AbstractCaculator{
public:
declineAbstractCaculator(int a, int b) : ma(a), mb(b){}
virtual int getresult(){
return this->ma - this->mb;
}
public:
int ma;
int mb;
};
void test(void)
{
AbstractCaculator *add = new addAbstractCaculator(10, 20);
cout << "结果" << add->getresult()<< endl;
}
int main(void)
{
test();
system("pause");
return 0;
}