[英]Constructor in inheritance
如何在Tanks类上声明构造函数,以创建新对象,如下所示:
tanks t34(durability, velocity, damage);
这是我的课:
#include <iostream>
using namespace std;
class vehicles{
private:
double durability;
double velocity;
public:
void drive() { cout << "drive\n"; }
void info() { cout << durability << " " << velocity << "\n"; }
vehicles(double d, double v) : durability(d), velocity(v) {}
~vehicles() {}
};
class tanks:public vehicles{
private:
double damage;
public:
using vehicles::vehicles;
tanks(double dmg) : damage(dmg) {}
void shot();
};
所以我想从复制变量:
vehicles(double d, double v) : durability(d), velocity(v) {}
并将其添加到Tanks类中。
只需在tanks
添加另一个构造函数:
tanks(double dmg, double v, double d):vechicles(d,v), dmanage(dmg) {}
//^^call base class constructor to init base part
然后,您应该能够如下创建tanks
对象:
tanks t34(durability, velocity, damage);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.