Пример:
У меня есть следующий блок кода:
if (!int.TryParse("123", out var parsedNumber))
{
return;
}
Console.WriteLine(parsedNumber);
Вывод в консоли: 123
Вопрос:
Как это возможно, что строка Console.WriteLine(parsedNumber);
знает о parsedNumber
?
Насколько я понимаю, parsedNumber
должен быть доступен только в if-block
, не так ли?
Если я попробую это:
foreach (var data in dataList)
{
data += "something";
}
Console.WriteLine(data);
Console.WriteLine(data);
не может найти data
.
Я думаю, что решение - это параметр out, но я не уверен. Кто-нибудь может это объяснить?