繁体   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