30/09/2018, 19:23

Cho em hoi vi sao khi viet code nhu the nay thi chuong trinh lai hien loi a

Tep main.cpp:
#include <iostream>
#include <string>
#include "SieuAnhHung.h"
#include "SieuNhan.h"

using namespace std;

int main()
{
    SieuAnhHung hero1;
    SieuNhan hero2;
    hero1.hienThi();
    hero2.hienThi();
    hero2.daLua(hero1);
    hero2.tanCong(hero1);
    hero1.tanCong(hero2);
    hero2.daLua(hero1);
    hero1.tanCong(hero2);
    hero2.tanCong(hero1);
    hero1.hienThi();
    hero2.hienThi();
    return 0;
}
Tep SieuAnhHung.h:
#ifndef SIEUANHHUNG_H_INCLUDED
#define SIEUANHHUNG_H_INCLUDED
#include <string>

class SieuAnhHung
{
public:
    SieuAnhHung();
    SieuAnhHung(std::string ten, int hp, int dmg)
    void nhanSatThuong(int dmg);
    void tanCong(SieuAnhHung& doiThu);
    void hienThi();
protected:
    int m_hp;
    int m_dmg
loi:std::string m_ten;
};



#endif // SIEUANHHUNG_H_INCLUDED

Tep SieuAnhHung.cpp:
#include <iostream>
#include <string>
#include "SieuAnhHung.h"

using namespace std;

SieuAnhHung::SieuAnhHung(): m_ten("BatMan"), m_hp(50), m_dmg(50)
{

}

SieuAnhHung::SieuAnhHung(string ten, int hp, int dmg): m_ten(ten), m_hp(hp), m_dmg(dmg)
{

}
void SieuAnhHung::nhanSatThuong(int dmg)
{
    m_hp -= dmg;
}
void SieuAnhHung::tanCong(SieuAnhHung& doiThu)
{
    doiThu.nhanSatThuong(m_dmg);
    cout << m_ten << " tan cong " << doiThu.m_ten;
}
void SieuAnhHung::hienThi()
{
    cout << "Ten: " << m_ten << endl;
    cout << "Mau: " << m_hp << endl;
    cout << "Sat thuong: " << m_dmg << endl;
}

Tep SieuNhan.h
#ifndef SIEUNHAN_H_INCLUDED
#define SIEUNHAN_H_INCLUDED
#include "SieuAnhHung.h"
#include <string>
class SieuNhan: public SieuAnhHung
{
public:
    SieuNhan();
    SieuNhan(std::string ten, int hp, int dmg);
    void daLua(SieuAnhHung& doiThu);
    void hienThi();
private:
    int m_power;
};
#endif // SIEUNHAN_H_INCLUDED

Tep SieuNhan.cpp:
#include "SieuAnhHung.h"
#include "SieuNhan.h"
#include <string>
#include <iostream>

using namespace std;

SieuNhan::SieuNhan(): SieuAnhHung(), m_power(1)
{

}
SieuNhan::SieuNhan(string ten, int hp, int dmg): SieuAnhHung(ten, hp, dmg), m_power(1)
{

}
void SieuNhan::daLua(SieuAnhHung& doiThu)
{
    if(m_power > 0)
    {
        doiThu.nhanSatThuong(m_dmg * 2);
loi:    cout << m_ten << " da lua " << doiThu.m_ten;
    }
    else
    {
        cout << m_ten << " da het nang luong" << endl;
    }
}
void SieuNhan::hienThi()
{
    SieuAnhHung::hienThi();
    cout << "Day la mot sieu nhan" << endl;
}
Loi:
std::string m_ten is protected
within this context
Ngô Doãn Tuấn viết 21:38 ngày 30/09/2018

Viết Game hả cậu ?

Bài liên quan
0