Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csPmScVlt 187 of 436 menu
◀ ▶

Время жизни переменной в C#

Время жизни переменной - это период, когда для нее выделена память и имя имеет смысл. У локальной переменной время жизни совпадает с областью видимости: от объявления до конца блока. Пример:

{ int num = 1; Console.WriteLine(num); // prints 1 } Console.WriteLine(num); // error - lifetime ended

Счетчик цикла живет, пока выполняется цикл. После выхода из цикла имя счетчика исчезает:

for (int i = 0; i < 3; i++) { Console.WriteLine(i); } Console.WriteLine(i); // error

Переменные локальной функции существуют только во время вызова. После возврата из функции их имена недоступны:

void Show() { int num = 5; Console.WriteLine(num); // prints 5 } Show(); Console.WriteLine(num); // error

Переменная на верхнем уровне программы живет до конца выполнения всей программы. Локальная функция без параметра может читать и менять такую переменную, пока функция выполняется:

int total = 0; void Add(int value) { total = total + value; } Add(3); Add(4); Console.WriteLine(total); // prints 7

Расскажите своими словами, чем время жизни локальной переменной в блоке отличается от времени жизни переменной на верхнем уровне программы.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить