Мне было интересно, существуют ли какие-либо языки, которые допускают названные кортежи. Т.е.: объект с несколькими переменными различного типа и настраиваемое имя.Языки, которые разрешают названные кортежи
т.д .:
public NamedTuple<double:Speed, int:Distance> CalculateStuff(int arg1, int arg2)
var result = CalculateStuffTuple(1,2);
Console.WriteLine("Speed is: " + result.Speed.ToString())
Console.WriteLine("Distance is: " + result.Distance.ToString())
я мог себе представить, как динамический может поддерживать такую функцию. Статические языки, которые я обычно плаваю (например, C#), могут выполнять словарь, но это не безопасно, если все объекты одного типа. Или вы можете использовать тип Tuple, но это означает, что у вас есть фиксированные имена членов (Var1, Var2 и т. Д.).
Вы также можете написать небольшой пользовательский класс, но это та ситуация, которую я бы хотел избежать.
Я мог представить себе, что язык макросов может писать на вас что-то подобное на статическом языке, но я не знаю такого языка.
Это выходит из моего ответа от this question about return types.
Поэтому я хотел бы избежать пользовательского класса/структуры является то, что я не люблю писать! Не более того. – ligos
В этой строке я не должен включать Tuple. var result = CalculateStuffTuple (1,2); –