2

収益、費用、利益の 3 つの変数があり、すべて Money 型 (ドルとセントの 2 つの int フィールドを持つ構造化型) であるとします。収益から費用を差し引いた結果を利益に割り当てます。収入が支出を上回るという幸せな仮定を立てましょう。ただし、費用のセント部分が収益のセント部分を上回っている場合もあります。その場合は、収益ドルから 1 を「借りる」(つまり 1 を引く) 必要があり、それを収益のセントに「与える」(つまり 100 を足す) ことで、適切に差し引くことができます。

ここに私が持っているものがありますが、機能していません:

if (revenue.cents < expenses.cents)
   {
    revenue.dollars = revenue.dollars -1;
    revenue.cents = revenue.cents + 100;
    profit = revenue - expenses;
   }
else 
   {
    profit = revenue - expenses;
   }

次のエラー メッセージが表示されます: エラー: 「収益 - 費用」の「オペレーター」が一致しません

どんな助けでも大歓迎です。ありがとう。

4

2 に答える 2

3

ある構造を別の構造から減算できないため、このエラーが発生しています。operator-()の関数を定義する必要がありますstruct

于 2012-11-18T19:14:20.853 に答える