2025.8.1
代码练习
//用指针访问对象成员
#include<iostream>
#include<string>
using namespace std;
class Champion
{
public:
Champion(int id, string nm, int hp, int mn, int dmg) {
ID = id;
name = nm;
HP = hp;
mana = mn;
damage = dmg;
}
void attack(Champion& chmp) {
chmp.takeDamage(this->damage);
}
void takeDamage(int incomingDmg) {
HP -= incomingDmg;
}
int getHP() {
return HP;
}
private:
int ID;
string name;
int HP;
int mana;
int damage;
};
int main() {
Champion A(1, "A", 800, 100, 10);
Champion B(2, "B", 700, 50, 10);
cout << "A的初始血量:" << B.getHP() << endl;
Champion* chmpPtr = &A;
(*chmpPtr).attack(B);
chmpPtr->attack(B);
cout << "A受到B攻击后的血量:" << B.getHP() << endl;
return 0;
}
//类定义后紧跟对象声明
#include<iostream>
using namespace std;
class MyClass
{
public:
MyClass() {
a = 1;
}
int getA() {
return a;
}
private:
int a;
}myclass;
int main() {
cout << "a的值是:" << myclass.getA() << endl;
return 0;
}