Вопрос из серии "данет" и "дубликат, гуглить не умеешь".
Мне нужно передавать объект по цепочке в несколько методов, при этом мне нужны только значения в объекте, сам объект менять не нужно.
Есть я напишу
void Q(MyClass myClass) {
W(myClass);
}
void W(MyClass myClass) {
E(myClass);
}
void E(MyClass myClass) {
R(myClass);
}
то каждый раз будет создан новый объект? Нужно ли при передаче указывать ref?
Не особо относится к вопросу, но я хочу поделиться. Для выстраивания цепочек вызовов, вы можете объявить методы, которые принимают ваш объект и возвращают ваш объект. Например, у нас есть класс
public class MyObject { }
И есть методы
public MyObject A(MyObject obj)
{
return obj;
}
public MyObject B(MyObject obj)
{
return obj;
}
public MyObject C(MyObject obj)
{
return obj;
}
тогда цепочка может выглядеть так:
var obj = new MyObject();
C(B(A(obj)));
Ну, или, если методы можно сделать статическими, их можно оформить методами расширения, например
public static class Ext
{
public static MyObject A(this MyObject obj)
{
return obj;
}
public static MyObject B(this MyObject obj)
{
return obj;
}
public static MyObject C(this MyObject obj)
{
return obj;
}
}
Тогда та же самая цепочка будет
var obj = new MyObject();
obj.A().B().C();
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Пишу код с использованием Дженериков на C#Возник вопрос из за чего Visual Studio ругается на подобное выражение:
Как изменить BorderThickness для ComboBox ToggleButton?
Если навести мышь на кнопку, то кнопка становится на 50% прозрачнейТак вот, написал я значит код: