Я не знаю, как правильно сформулировать вопрос, напишу как есть.
Допустим, я хочу сделать "объект", содержащий в себе несколько строго упорядоченных переменных разных типов данных, значения которых можно было бы изменять. Что-то типа такого:
myObj = int,int, bool, string, string;
Есть ли в сишарпе такой велосипед?
Можно использовать Кортеж:
var myObj = new Tuple<int, int, bool, string, string>(5, 3, true, "text", "string");
или:
var myObj = Tuple.Create(5, 3, true, "text", "string");
Обращаться к компонентам кортежа затем можно так: myObj.Item1
, myObj.Item3
Одно из преимуществ использования кортежей - у них "правильно" работает условие эквивалентности "из коробки", т.е:
new Tuple<int, int, bool, string, string>(5, 3, true, "text", "string") == new Tuple<int, int, bool, string, string>(5, 3, true, "text", "string")
вернет true
, это полезно, когда вы используете кортежи, например, в качестве ключей словарей
В случае же с отдельным классом, как предлагают ниже, вам придется еще и перегрузить операторы ==
и !=
Но использовать кортежи стоит осторожно - сильное увлечение ими может значительно снизить читабельность кода!
public class Velosiped
{
public int a;
public int b;
public bool c;
public string d;
public string e;
}
Так и знал - тупл, трупл, четверупл. "Какой моральный человек" добровольно такое в продакшен вставит?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как сделать поочередное нажатие кнопок через таймер?
Даны две последовательности целых чиселВ каждой из последовательностей встречаются только различные числа
Здравствуйте, есть формула Беллара которая должна возвращать n-й разряд числа пи в двоичном представлении: