Передача переменной по ссылке в другой класс - C#

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

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

Здравствуйте. Собственно сабж. Имеем первый класс
public class Tmp1
{
public int i=10;
public static Tmp2 Tmp;
..... 
         public Tmp1()
           {
             Tmp = new Tmp2(ref int i);
           }
.....
         public void SomeFun()
          {
             i = 20;         
          } 
}
второй класс
 
public class Tmp2
{
public  int j = 1;  
public  int l = 0;
 
       public Tmp2(ref int k)
        {
          j = k; // j =  10;
          .....
        }
   .... 
   public void THRead()
    {
      while(true)
        {
          .....
         l = j; // l = 10;
        }
    }
}
Собственно вопрос: Если в первом классе Tmp1 выполнить функцию Fun, то во втором классе Tmp2 значение переменных l и j не измениться (THRead бесконечно выполняющиеся нитка). В чем косяк?

Решение задачи: «Передача переменной по ссылке в другой класс»

textual
Листинг программы
public Tmp2(ref int k)
        {
          j = k; // j =  10;
          .....
        }

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


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

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

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