使用c#的struct数组

时间:2015-04-04 18:09:34

标签: c# arrays

我在2013年的visual studio中使用c#制作冰淇淋制造商 首先,当加载冰淇淋时,程序应该构建2条记录..每种冰淇淋一种,另一种冰淇淋浇头

我已经通过创建一个新类并为每条记录写了属性来完成这个:

namespace IceCreamMaker {

class Class1
{

    public class flavour
    {
        public string flavour_name { get; set; }
        public double Price { get; set; }
        public int Available_quantity { get; set; }

        public flavour(string flavour_name, double Price1, int Available_quantity)
        {
            flavour_name = flavour_name;
            Price = Price1;
            Available_quantity = Available_quantity;
        }
    }

    public class topping
    {
        public string Topping_type { get; set; }
        public double Price { get; set; }

        public topping(string Topping_type, double Price2)
        {
            Topping_type = Topping_type;
            Price = Price2;
        }
    }

}

现在问题在于这句话:

声明并构造两个Struct数组作为public 变量;一种用于调味料,另一种用于浇头。

我不明白我该怎么办?

1 个答案:

答案 0 :(得分:1)

听起来你需要声明你的味道和顶级类作为结构。 c#中的结构与类相似,除了它们是通过值而不是通过引用传递的。然后在外部类中声明这些类型的两个数组。最后为外部类定义构造函数并构造两个数组。

namespace IceCreamMaker {

class Class1
{

    public struct flavour
    {
        public string flavour_name { get; set; }
        public double Price { get; set; }
        public int Available_quantity { get; set; }

        public flavour(string flavour_name, double Price1, int  Available_quantity)
        {
            flavour_name = flavour_name;
            Price = Price1;
            Available_quantity = Available_quantity;
        }
    }

    public struct topping
    {
        public string Topping_type { get; set; }
        public double Price { get; set; }

        public topping(string Topping_type, double Price2)
        {
            Topping_type = Topping_type;
            Price = Price2;
        }
    }

    public flavour flavours[];
    public topping toppings[];

    public Class1()
    {
        flavours = new flavour[50];
        toppings = new topping[50];
    }

}