参数类类型变量

问题描述:

现在我有两个类,现在初始化Order类我必须将数据传递给构造函数,但构造函数需要CartContents类型数据它是什么意思,传递给参数。我不明白这个概念。参数类类型变量

//first class 

public class CartContents 
{ 
    public CartEntry[] items; 
} 

//second class 

public class Order 
{ 
    private CartContents cart; 
    private float salesTax; 

    public Order(CartContents cart, float salesTax) 
    { 
     this.cart = cart; 
     this.salesTax = salesTax; 
    } 

    public float OrderTotal() 
    { 
     float cartTotal = 0; 
     for (int i = 0; i < cart.items.Length; i++) 
     { 
      cartTotal += cart.items[i].Price * cart.items[i].Quantity; 
     } 
     cartTotal += cartTotal * salesTax; 
     return cartTotal; 
    } 
    public static void Main() 
    { 
     Order OrderObj = new Order(new CartContents(), 12.5); 
     Console.Read(); 
    } 
} 

Order类具有自定义构造函数:

公共秩序(CartContents车,浮销售税)。

这意味着无论您何时实例化Order类,都需要将Order类的CartContents类型的对象和float类型的对象作为参数传递给Order类。

在您的示例的Main方法中,您可以清楚地看到,在实例化Order对象时,您传递CartContent类型和float类型。参数“new CartContents()”实际上是CartContents的构造函数,因此您将构造函数作为新参数传递给Order类,并且您可以在CartContents类中看到初始化名为CartContent类型的“items”的数组

请参阅关于C#构造函数以下链接:

编辑:固定链接

1)Instance Constructors in C#

2)Using Constrctors in C#