Почему этот bool не распознает использование?

#c# #.net #boolean

#c# #.net #логическое

Вопрос:

Я привел пример ввода имени и фамилии. Почему присвоенная переменная «EmptyInput» не распознает, что она используется, даже если я добавил значение false и true? Я не знаю, как называется зеленая волнистая линия внизу.

 using System.Collections.Generic;
using System;
using System.Threading;

namespace MyLogbook
{
    public static class Program
    {
        class PInfo
        {
            public string FirstName;
            public string LastName;
        }
        public static void Main(string[] args)
        {

        Console.WriteLine("tWelcome to your new logbook!");
            Console.WriteLine("tPlease enter your first and last name.n");

            PInfo pInfo = new PInfo();
            bool EmptyInput;
            do
            {
                Console.Write("tFirst name: ");
                pInfo.FirstName = Console.ReadLine();

                Console.Write("tLast name: ");
                pInfo.LastName = Console.ReadLine();

                if (!string.IsNullOrEmpty(pInfo.FirstName   pInfo.LastName))
                {
                    Console.WriteLine("ntHi, "   pInfo.FirstName   " "   pInfo.LastName   ".n");
                    EmptyInput = false;
                }
                else
                {
                    Console.Write("ntEmpty input, please try again.nn");
                    EmptyInput = true;
                }
            } while (string.IsNullOrEmpty(pInfo.FirstName   pInfo.LastName));
        }
    }
}
  

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

1. Когда вы наводите курсор на эту зеленую «волнистую», может быть, это говорит о том, что вы присваиваете значения, но никогда их не используете? Зеленый — это предупреждение, ошибка (например, «неназначенная») будет красной.

Ответ №1:

Может быть, вы хотите это сделать

 } while (EmptyInput);
  

вместо

 } while (string.IsNullOrEmpty(pInfo.FirstName   pInfo.LastName));
  

потому что вы просто присваиваете значение переменной, но никогда не используете ее