Инициализация и присвоение значения

int test;

Это объявление переменной

test = 5;

Это ее инициализация

int test2 = 5;

А что это? Тут как бы и объявление и инициализация одновременно. Есть ли для этого отдельное название или нет?

И еще пара вопросов (которые не относятся к верхней части): инициализация это присвоение значения переменной в первый раз, в дальнейшем это просто присвоение, правильно я понимаю?. можно ли сказать определение вместо присвоения, это же не принципиально? Просто везде вижу разные названия и в голове путаница из-за этого.


Ответы (1 шт):

Автор решения: aepot

Не путайтесь, всегда инициализируйте переменную сразу изначальным значением.

int a = 42;

Объявление без инициализации редко требуется, например если инициализация переменной происходит в области видимости, которая недуступна при последующем её использовании.

Например

if (x > 0)
{
    int a = 42;
}
else
{
    int a = 123;
}
Console.WriteLine(a); // ОШИБКА

Здесь поможет объявление заранее

int a;
if (x > 0)
{
    a = 42;
}
else
{
    a = 123;
}
Console.WriteLine(a);

Похожая ситуация с блоками using и try-catch будет вам встречаться в будущем. Во всех остальных случаях объявление переменной заранее не только бессмысленно, но и затрудняет чтение кода. Лучше его избегать.

→ Ссылка