Передача экземпляра класса в метод - C#

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

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

Всем привет случайно столкнулся с данной проблемой. Есть простой класс
    public class Test
    {
        public int First { get; set; }
        public int Second { get; set; }
 
        public Test()
        {
            First = 0;
            Second = 0;
        }
    }
List<Test> ttt = new List<Test>();
 
Test f = new Test();
f.First = 1000;
f.Second = 100;
 
Test sf = new Test();
sf.First = 1055500;
sf.Second = 105550;
 
ttt.Add(f);
ttt.Add(sf);
 
for (int i = 0; i < ttt.Count; i++)
{
   SWP(ttt[i]);
}
и метод
private void SWP(Test t)
{
   t = new Test();
}
Почему не происходит никаких изменений, все значения в List остаются неизменными. Но я могу в методе изменить все значения по одному. Я не могу понять это же ссылочный тип. То есть я не могу создать новый экземпляр класса в методе и присвоить его, классу который я передал в метод, он все равно не заменится. Почему так?

Решение задачи: «Передача экземпляра класса в метод»

textual
Листинг программы
for (int i = 0; i < ttt.Count; i++)
{
    ttt[i] = SWP();
}

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


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

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

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