Невозможно указать аргументы конструктора в объявлении в C Sharp - PullRequest
1 голос
/ 29 мая 2020

Это Вопрос Я пытаюсь решить в C Sharp.

Я получаю сообщение об ошибке:

Ожидается ошибка; или = (не может указывать аргументы конструктора в объявлении)

Может ли кто-нибудь помочь мне решить эту проблему или помочь мне решить эту проблему?

namespace program
{
    public class Integer
    {
        private int intvar;
        public Integer()
        {
            intvar = 0;
        }
        public Integer(int x)
        {
            intvar = x;
        }
        public void display()
        {
            Console.Write(intvar);
            Console.Write("\n");
        }
        public void add(Integer x, Integer y)
        {
            intvar = x.intvar + y.intvar;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Integer a(5),b(45);
            Integer c;
            c.add(a,b);
            c.display();
            Console.ReadLine();
        }
    }
}

Ответы [ 2 ]

5 голосов
/ 29 мая 2020

Вы не можете создавать подобные объекты в C#. Я предполагаю, что вы пришли из C ++, где этот синтаксис возможен.

В C# вам нужно создавать объекты, используя new:

Integer foo = new Integer(45);
4 голосов
/ 29 мая 2020

Чтобы создать новый экземпляр типа, вы должны вызвать один из конструкторов этого типа с помощью оператора new. Например:

    class Program
    {
        static void Main(string[] args)
        {
            var a = new Integer(5);
            var b = new Integer(45);
            var c = new Integer(); //result instance
            c.add(a, b);
            c.display();
            Console.ReadLine();
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...