объявление статической переменной в классе

#c#

#c#

Вопрос:

Я получаю сообщение об ошибке при указании collName как статической переменной в классе Student. Может ли кто-нибудь помочь мне найти ее.

 class Student
    {
        public int SId;
        public string SName;
        public Student(int SId)
        {
            this.SId = SId;
            Console.WriteLine("Constructor is called");
        }
        static string coll = new string ();
        cool = "RVIM"
  

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

 Error   1   Invalid token '=' in class, struct, or interface member declaration C:UsersamruthapAppDataLocalTemporary ProjectsConsoleApplication1Student.cs   18  14  ConsoleApplication1
Error   2   'string' does not contain a constructor that takes 0 arguments  C:UsersamruthapAppDataLocalTemporary ProjectsConsoleApplication1Student.cs   17  37  ConsoleApplication1
Error   3   'ConsoleApplication1.Student.coll' is a 'field' but is used like a 'type'   C:UsersamruthapAppDataLocalTemporary ProjectsConsoleApplication1Student.cs   18  9   ConsoleApplication1
    }
  

Комментарии:

1. получение ошибки является слишком общим. вы должны как минимум включить сообщение об ошибке в свой вопрос

2. Здесь есть несколько ошибок. С какой из них вам нужна помощь.

3. Что круто? и почему она назначается там, где она есть?

4. Являются ли coll и cool одной и той же переменной — опечатки ? Где находится collName ?

5. не круто, попробуй static string coll = "RVIM";

Ответ №1:

Вы не можете вызвать конструктор строк по умолчанию — класс String не имеет ctor, принимающего 0 параметров.. Попробуйте установить значение coll равным «»

Ответ №2:

строка не содержит конструктора, который принимает 0 аргументов

во-вторых, cool = "RVIM" = недопустимый токен в объявлении структуры класса или члена интерфейса.

Ответ №3:

Не вызывайте строковый конструктор …попробуйте рассматривать ее как тип значения

статическая строка coll = » » ;

Комментарии:

1. Если быть точным, string не является типом значения — это ссылочный тип. Здесь вы присваиваете строковой переменной буквальное значение.