005·C++快速概要:类 面向对象

  • 类的声明Enemy.h

//一般来说函数设为公有,数据设为私有
class Enemy
{
public://公开
	string name;

	void Attack();//函数声明
	void TakeDamage();//函数声明
        Enemy(int hp, int damage);//声明有参构造函数
        Enemy();//手动声明无参构造函数
private://私有
    int hp;
    int Damage;
};
  • 类的实现Enemy.cpp

void Enemy::Attack() {
	cout << "名字:"<< name << endl;
	cout << "播放攻击动作" << endl;
	cout << "播放攻击特效" << endl;
	cout << "让被攻击的人受伤" << endl;
	cout << "当前HP:" <<hp<< endl;
}

void Enemy::TakeDamage() {
	cout << "播放受伤动作" << endl;
	cout << "播放受伤特效" << endl;
	cout << "扣除自身hp" << endl;
	cout << "当前HP:" << hp-Damage << endl;
}

Enemy::Enemy(int hp, int damage) //有参构造函数的实现
{
	HP = hp;
	Damage = damage;
}

Enemy::Enemy() //无参构造函数的实现
{
	HP = 0;
	Damage = 0;
}
  • 类的使用 demo01.cpp

int main() {
    //我们使用自己定义的类声明的变量,可以称之为对象
	Enemy enemy = Enemy(200,100); //使用有参的构造函数进行初始化enemy
	enemy.name = "丁大嘴";
	enemy.Attack();
	enemy.TakeDamage();

	Enemy enemy2 = Enemy(); //使用无参的构造函数进行初始化enemy
	enemy2.name = "大嘴";
	enemy2.Attack();
	enemy2.TakeDamage();
}
  • 类的继承

子类的声明WalkEnemy.h

class WalkEnemy :public Enemy //继承自Enemy
{
public:
	WalkEnemy(int hp,int damage); //子类的构造函数
};

子类的调用父类的构造函数进行初始化WalkEnemy.cpp

WalkEnemy::WalkEnemy(int hp,int damage):Enemy(hp,damage){}

子类的初始化及使用 demo01.cpp

	WalkEnemy walkenemy = WalkEnemy(200,105);
	walkenemy.Attack();
	walkenemy.TakeDamage();

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值