面向对象的程序设计-14-用虚函数实现价格的统计(实例)

//定义一个货物Goods类,它派生3种不同的电器子类:冰箱、彩电、空调。
//然后各创建一个实际的对象,即顾客购买了3种电器,比如:海尔冰箱、
//长虹彩电、格力空调。使用虚函数,求这些电器价格之和。这是偶们测试的题目耶,闲来就发到这里了
#include <iostream>
using namespace std;
class Goods
{
public:
void set_price(double i)//设置价格
{
price=i;
}
virtual double get_price()//将get_price指定为虚函数
{return price;}
void show_price();//显示价格
protected:
double price;
};
void Goods::show_price()
{
cout<<price<<endl;
}
class freezer:public Goods//冰箱类,公有继承
{
public:
double get_price()
{
cout<<"冰箱的价格"<<price<<endl;
return price;
}
};
class televison:public Goods
{
double get_price()
{
cout<<"彩电的价格"<<price<<endl;
return price;
}
};
class aircondition:public Goods
{
double get_price()
{
cout<<"空调的价格"<<price<<endl;
return price;
}
};
void main()
{
double sum=0;
Goods *temp[3];
Goods *g;freezer f;televison t;aircondition a;
g=&f;temp[0]=&f;
g->set_price(2000);g->show_price();
g=&t;temp[1]=&t;
g->set_price(3000);g->show_price();
g=&a;temp[2]=&a;
g->set_price(4000);g->show_price();
g->get_price();
cout<<"使用循环的方法来实现求和"<<endl;
for(int i=0;i<=2;i++)
{ temp[i]->get_price();
sum+=temp[i]->get_price();
}
cout<<"求和的结果"<<sum<<endl;
/*for(int i=0;i<=2;i++)
sum+=temp[i]->show_price
cout<<"求和的结果"<<sum<<endl;*/
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值