Krokizo Ответов: 1

С помощью методов


  static void Main(string[] args)
        {
            Console.WriteLine("Choose 1 to continue or 0 to exit");
            int choice = int.Parse(Console.ReadLine());
            if (choice==0)
            {
                Console.WriteLine("Bye");
                System.Environment.Exit(0);
            }
            do
            {

                Check(out float i,"MEssage");
                Check(out float j,"MEssage");
                Check(out float k,"MEssage");

            } while (choice==1);
        }

        public static void Check(out float param, string message)
        {
            bool isNumber;
            string input;
            do
            {
                input = Console.ReadLine();
                isNumber = float.TryParse(input, out param);
            } while (!isNumber);
        }
}


Что я уже пробовал:

Я пытаюсь проверить ввод пользователей только один раз, а затем вызвать его как метод и не позволять пользователю продолжать, если он ошибается, но при вызове метода возникает ошибка. Я не могу полностью понять использование методов OUT in.

1 Ответов

Рейтинг:
6

Richard Deeming

Когда вы вызываете метод с ref или out параметр, вы включаете ref или out модификатор, но ты не включите имя типа.

Вам также нужно объявить переменные отдельно.

float i, j, k;
Check(out i,"MEssage");
Check(out j,"MEssage");
Check(out k,"MEssage");

// Now you can use i, j and k...

из (Справочник по c# )[^]
параметры-модификаторы (Справочник по c# )[^]