Объявление переменных в цикле for - C#

Узнай цену своей работы

Формулировка задачи:

Доброго дня всем! Продолжаю изучать C#. Начал разбирать свой текстовый файлик с "вопросами" и вот: Как работает конструкция:
for(int i=0; i<10; ++i)
{
    int n;
    n = 4;
                
    string a;
    a = "sasa";
}
Во время проверки условия работы for переменные становятся невидимыми. Как только условие оказывается истинным, то переменные становятся видимыми, причём строки
int n;
string a
- игнорируются. А значения переменных остаются те, которые они получили перед выходом из предыдущей итерации. Делаю вывод - при "объявлении" переменных внутри цикла, память выделяется ОДИН раз - в первой иттерации. А потом используется уже выделенная память (как для переменных-значений, так и для переменных-ссылок) С другой стороны конструкция
for(int i=0; i<10; ++i)
{    
    string a = new string("sasa");
}
каждый раз "забывает" про старый стринг и создаёт новый, причём старый удаляется GC Правильно рассуждаю?

Решение задачи: «Объявление переменных в цикле for»

textual
Листинг программы
            string s1 = "ab" + "c";
            string s2 = "a" + "bc";
            Console.WriteLine(s1 == s2);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.2 из 5
Похожие ответы