我有一个班级“球员”。它的成员是简单的字符串和整数,我为其中的每一个都有 Getter 和 Setter ......基本的东西:(有很多成员,所以我只给了 3 个来缩小代码):
播放器.H
class Player
{
private:
string Name;
string Role;
int FFDefence;
......etc
public:
//constructor function
Player(
string Name = "Not Stated",
string vRole = "Not Stated",
int vFFDefence = 0,
......etc
)
//Getter Functions
string GetName() const;
string GetRole() const;
int GetFFDefence() const;
.....etc
//Setter Functions
void SetName (string x);
void SetRole(string x);
void SetFFDefence(int x);
......etc
};
播放器.CPP
Player::Player( string vName,
string vRole,
int vFFDefence,
......etc
{
Name = vName;
Role = vRole;
FFDefence = vFFDefence,
......etc
}
//getter functions
string Player::GetName() const {return Name; };
string Player::GetRole() const {return Role; };
int Player::GetFFDefence() const {return FFDefence; };
.....etc
//Setter Functions
void Player::SetName(string x) { Name = x ; };
void Player::SetRole(string x) { Role = x ; };
void Player::SetFFDefence(int x) { FFDefence = x ; };
......etc
所以是的 - 非常标准......现在我有第二个类,其中一个成员函数是 Player 类本身。
BATTER.H
class Batter
{
private:
Player ID;
int Touch;
....etc
public:
Batter(Player vID, int vTouch = 0....etc);
//Getter Functions
string GetRole() const;
int GetFFDefence() const;
int GetBFDefence() const;....and so on.
好的 - 这就是代码!!!!
因此,在传入和传出变量方面,我已经完成了我想做的一切......所以我可以创建
Player Dave ("Dave", "Opener", 98, ....etc)
然后稍后(当我需要它时)创建
Batter OnStrike (Dave, 10, .....etc)
所有的肉汁......好吧,所以我开始研究继承并意识到这是我应该做的......返回转换不是问题(前几天用数组和向量做了这个)......
这是我的问题:
使用我现在所拥有的,我可以创建“Player Dave”,然后在需要时将他传递给 Batter 的子类。我如何对传统继承做同样的事情?如何获取 Player 的特定实例(已创建)并将其用作子类 Batter 的特定实例的父级?据我目前可以推断,您需要同时创建两者。