2013-12-23 30 views
1

兩者都是整數,但它不斷給我的錯誤爲什麼這不起作用? Entities.CurHP - Entities.RIntDamage

「只有分配,調用,遞增,遞減,在等待着,新的對象 表達式可以作爲一個聲明」

我試過使用不同的操作符,但沒有給我我想要的答案。如果Entities.RIntDamage = 5和Entities.CurHP = 10應該不是5?

+0

你認爲那條線有什麼作用? – SLaks

+0

從Entities.CurHP中減去Entities.RIntDamage? – AgentMcBride

+1

然後呢?如果你從不看結果,減去一個數字有什麼意義? – SLaks

回答

4

因爲你其實不是什麼。

由於錯誤試圖告訴你,C#中的語句必須具有某種效果。
書寫a - b沒有效果。

您可能想要將結果存儲在變量中,或將其傳遞給函數。

+0

Entities.RIntDamage - Entities.CurHP = Entities.CurHP;但是,這給了我同樣的錯誤... – AgentMcBride

+2

寫它反過來:'Entities.CurHP = Entities.CurHP - Entities.RIntDamage;' –

+0

@NickGotch謝謝!這工作完美! – AgentMcBride

0

我以爲這會改變Entities.CurHP

你的假設是合理的,但要求稍有不同的語法。使用-=而不是-。也就是說,使用:

Entities.CurHP -= Entities.RIntDamage; 

=告訴C#來存儲結果(Entities.CurHP)。

類似地,Entities.CurHP -= 6 + 5;將從Entities.CurHP中減去11並將結果存儲在Entities.CurHP中。