無知の事に対する謝罪、私はこれで非常に新しく、次のエラーが出ます。オペレータ*は、decimal型とdouble型のオペランドには適用できません
Iライン56と63は
ライン56のエラーですも置いコメント - CS0019演算子*はdecimal型のオペランドに適用することができないと、二重
ライン63のエラー - 引数1:から変換できません " BOOL 『「を』空
{
class Savings : Account
{
//property
private double interestrate;
//constructor
public Savings()
{
}
public Savings(string AccountName, int AccountNumber, decimal balance, double interestrate)
{
setAccountName(AccountName);
setAccountNumber(AccountNumber);
setBalance(balance);
setinterestrate(interestrate);
}
//setter
public void setinterestrate(double interestratepassedin)
{
if (interestrate > 0)
{
interestrate = interestratepassedin;
}
else
{
interestrate = 0;
}
}
//getter
public double getinterestrate()
{
return interestrate;
}
//method to calculate interest
public void calculateinterest()
{
//line 56 below
return getBalance() * getinterestrate();
}
public override void printaccount()
{
base.printaccount();
//line 63 below
Console.WriteLine(Console.WriteLine("{0}\t{1}\t{2}\t{3}", getAccountName(), getAccountNumber(), getBalance(), interestrate));
}
}
}
'setAccountName'、' setAccountNumber'?これはJavaとは何ですか?そのようなコードにあなたを教えている人は、とても熟練したC#開発者ではありません。 –
'calculateinterest()'関数の戻り値の型を 'void'から' double'に変更します。実際には 'void'は返さないことを意味し、' void'関数から 'double'値を返そうとしています。 – shahjahan
'void'メソッドは戻り値の型を持たないので、そこに' return'文を使うことはできません。 'GetBalance'が10進数の場合(私はあなたが* camelCase *メソッド名とgetter-setterメソッドを使用するJava世界から来ていると思います)、2番目の演算子が' double'の場合は乗算は無効ですどちらも)。 –