在一类C#中的两个构造函数[关闭]

问题描述 投票:0回答:1

我在类中遇到问题,在该类中有两个构造函数,一个没有参数,而一个则有两个参数。好吧,两个构造函数都具有相同的名称,因此当我尝试在Program中调用构造函数时,它会在构造函数名称中调用错误,这是合理的,因为我在一个类中具有相同的构造函数。在任务中告诉我,我需要编写两个构造函数,一个带有参数,另一个不带我之前说过的参数。该类的名称是Artikal(英语,Article)和两个参数Naziv(英语,Name)和Količina(英语,Amount)。我的问题是如何解决此问题,并可以用其他名称重命名某些构造函数?这是我的代码。

Program.cs

{
    class Program
    {
        static void Main(string[] args)
        {
            Artikl artikl = Artikl("Pivo", 50);
            Console.WriteLine(artikl.naziv);
            Console.WriteLine(artikl.kolicina);
        }
    }
}

Artikal.cs

namespace Zadatak_1
{
    class Artikal
    {
        public string naziv { get; set; }
        public int kolicina { get; set; }

        public Artikl(string Naziv, int Kolicina)
        {
            this.naziv = Naziv;
            this.kolicina = Kolicina;
        }
        public Artikl() { }
    }
}
c#
1个回答
2
投票

您需要在实例化new类之前添加关键字Artikl

但是,您可以使用参数摆脱构造函数,并在Artikl对象的声明中内联分配值。

    {
        static void Main(string[] args)
        {
            Artikal artikal = new Artikal {
              naziv ="Pivo", 
              kolicina  = 50
            };

            Console.WriteLine(artikal.naziv);
            Console.WriteLine(artikal.kolicina);
        }
    }
© www.soinside.com 2019 - 2024. All rights reserved.