亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

搞不明白應該怎樣用這同一個類函數讓他們互斗造成傷害,盼高手指點。

搞不明白應該怎樣用這同一個類函數讓他們互斗造成傷害,盼高手指點。

C++
眼眸繁星 2022-12-14 15:11:36
如下所示,我設了小白和小黑兩個人的攻防值以及一個攻擊類函數int WhiteStr = 10;int BlackStr = 8;int WhiteDef = 4;int BlackDef = 5;class Attack{public:unsigned int Damage(){cout<<"造成"<<Str()-Def()<<"點傷害"<<endl;}private:int Str(), Def();protected:};
查看完整描述

3 回答

?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

將類的攻擊攻擊接口改為public
class Attack
{
public:
int Str(), Def();
unsigned int Damage()
{
cout<<"造成"<<Str()-Def()<<"點傷害"<<endl;
}
unsigned int Damage( Attack role)
{

cout<<"造成"<<Str()-role.Def()<<"點傷害"<<endl;

}

private:

protected:
};

Attack role_black;
attack role_white;
role_black(role_white);//black 對white 的傷害

 


查看完整回答
反對 回復 2022-12-18
?
飲歌長嘯

TA貢獻1951條經驗 獲得超3個贊

最簡單的,可以寫在一個

詮釋WhiteStr = 10; 

詮釋BlackStr = 8; 

詮釋WhiteDef = 4; 

詮釋BlackDef = 5; 

類攻擊

{

的攻擊(STR,INT高清)m_str(STR),m_def的的(DEF){} / /構造函數,在進攻防守傳入

unsigned int類型傷害()

{

法院<<“”<< STR()的高清()<<“點的傷害”<< endl; 0; 



私人

詮釋STR()/ /函數編寫完整

{

返回m_str; 

} 詮釋投籃不中()/ /函數寫

{

的回報m_def; 



詮釋m_str; / /攻擊

詮釋m_def / /國防保護:

}; 

廉政的main()

{

攻擊白(WhiteStr,WhiteDef),黑色(BlackStr,BlackDef); 

white.Damage(); 

black.Damage(); 

返回0; 
}

 


查看完整回答
反對 回復 2022-12-18
?
慕運維8079593

TA貢獻1876條經驗 獲得超5個贊

最簡單可以寫成這樣

int WhiteStr = 10;
int BlackStr = 8;
int WhiteDef = 4;
int BlackDef = 5;
class Attack
{
public:
Attack(int str, int def) : m_str(str), m_def(def){} // 構造函數,將攻防傳入
unsigned int Damage()
{
cout<<"造成"<<Str()-Def()<<"點傷害"<<endl;
return 0;
}
private:
int Str() // 將函數寫全
{
return m_str;
}
int Def() // 將函數寫全
{
return m_def;
}
int m_str; // 攻擊
int m_def; // 防御
protected:
};
int main()
{
Attack white(WhiteStr, WhiteDef), black(BlackStr, BlackDef);
white.Damage();
black.Damage();
return 0;
}


查看完整回答
反對 回復 2022-12-18
  • 3 回答
  • 0 關注
  • 125 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號