由抽象类继承而来的派生类的构造函数的问题,请看代码
我这个代码总是有一个错误,就是实例化派生类对象的时候,不知道派生类的对象是怎么调用基类的构造函数的,是什么顺序,反正就是派生类是如何构造的地方有点不太清楚,请各位指点以下。
#define max 100000
#include <iostream.h>
#include "Card.cpp"
class ATM //定义一个自动取款机的抽象类
{
protected:
Card myCard; //Card类的对象作为私有数据成员
float totalmoney; //取款机总钱数
public:
ATM(Card& card) : myCard(card)
{
totalmoney = max;
}
virtual bool Fetchmoney(float money) = 0;
virtual ~ATM()
{
}
};
class IndustryATM: public ATM //派生一个工商银行的类
{
bool Fetchmoney(float money)
{
if(myCard.GetCardType() == industry)
{
totalmoney = totalmoney - money;
if(myCard.ChangeMoney(money))
return true;
}
else
{
cout<<"非农业银行卡,需缴纳1%的手续费!"<<endl;
totalmoney = totalmoney - money;
money = money + money * 0.01;
if(myCard.ChangeMoney(money))
return true;
}
}
};
int main()
{
Card card("123",500,China); //实例化一个中国银行的卡密码123,现金500
IndustryATM myATM(card);//就是这里的问题老出现一个错误,不知到是怎么个构造顺序
return 1;
}
#define max 100000
#include <iostream.h>
#include "Card.cpp"
class ATM //定义一个自动取款机的抽象类
{
protected:
Card myCard; //Card类的对象作为私有数据成员
float totalmoney; //取款机总钱数
public:
ATM(Card& card) : myCard(card)
{
totalmoney = max;
}
virtual bool Fetchmoney(float money) = 0;
virtual ~ATM()
{
}
};
class IndustryATM: public ATM //派生一个工商银行的类
{
bool Fetchmoney(float money)
{
if(myCard.GetCardType() == industry)
{
totalmoney = totalmoney - money;
if(myCard.ChangeMoney(money))
return true;
}
else
{
cout<<"非农业银行卡,需缴纳1%的手续费!"<<endl;
totalmoney = totalmoney - money;
money = money + money * 0.01;
if(myCard.ChangeMoney(money))
return true;
}
}
};
int main()
{
Card card("123",500,China); //实例化一个中国银行的卡密码123,现金500
IndustryATM myATM(card);//就是这里的问题老出现一个错误,不知到是怎么个构造顺序
return 1;
}
...全文
相关推荐
基于Vue框架的第三方施工巡检APP JavaScript设计源码
本项目为基于Vue框架开发的第三方施工巡检APP的JavaScript设计源码,包含28个文件,涵盖12个JavaScript文件、4个Vue组件文件、3个批处理脚本文件及其他配置和构建文件。该应用旨在提高施工巡检的效率和准确性。
mui+vue的商城APP源码
做项目时无意中找到的mui+vue的商城APP源码,里边有很全的整个商城的html5静态布局页面,还有一部分是读了动态数据的页面,对初学者入门一有定的帮助和做商城APP的朋友可以借鉴学习一下
vuejs外卖App实战项目
vue.js外卖App实战项目
基于vue开发的头条app(含源码)
基于vue开发的类似今日头条的app,包含了源码,下载后可直接运行。
基于Vue的uni-app个人日记App
使用基于Vue的uni-app框架编写的个人日记App,里面含源代码以及报告,代码下载之后可直接到HbuilderX上运行查看结果


