'Order'不包含带0参数的构造函数

-4 c# constructor arguments

我得到'Order'不包含带0参数的构造函数.所以根据这个错误,我知道它在我的公共课程中.我在俯瞰什么?谢谢!

public class Order
{
    public int QuantityOrdered { get; set; }
    public double TotalPrice;
    public const double PRICEEACH = 19.95;

    virtual public double totalPrice
    {
        set
        {
            TotalPrice = QuantityOrdered * PRICEEACH;
        }
    }
}

public class ShippedOrder : Order
{
    public const double SHIPPINGFEE = 4.00; 
    public override double totalPrice
    {
        set
        {
            totalPrice = base.TotalPrice + SHIPPINGFEE;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Dan*_*gby 5

Order类中必须有一个构造函数,您没有在您提供的代码中列出.

如果没有为类定义任何构造函数,编译器将为您提供隐式无参数构造函数.

但是,当您添加一个带参数的构造函数时,例如.public Order(string someString) {},你失去了这个隐式的构造函数.

您需要做的是以下之一:

  1. 添加一个显式的无参数构造函数,例如. public Order() {}

  2. 更新实例化Order对象的代码,以传递它正在寻找的参数,例如. new Order(someString)

  3. 从订单中删除期望参数的构造函数.