簡體   English   中英

最佳的重載方法匹配為類構造函數(C#)包含一些無效的參數

[英]The best overloaded method match has some invalid arguments for a class constructor (C#)

我收到此錯誤,但不確定原因。 在一個類中,我使用以下代碼行創建一個對象:

StoreSale sale = new StoreSale(1, 13.99);

StoreSale類中的構造函數如下所示:

public StoreSale(int quantity, float value)
{
   this.quantity = quantity;
   this.value = value;
}

...並且我收到錯誤消息“應用程序名稱的最佳重載方法匹配。StoreSale.StoreSale(int,float)有一些無效的參數。”

有人可以建議我做錯什么嗎?

13.99雙重文字。 附加一個f以使其為float: 13.99f

無論如何,您可能都不希望對貨幣值使用二進制浮點數。 decimal是一個更明智的選擇。

13.99是一個double 要使其成為float文字,請添加f13.99f

之所以會出現此錯誤,是因為字面值13.99double ,並且沒有從doublefloat隱式轉換。 請改用13.99F

StoreSale sale = new StoreSale(1, 13.99F);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM