http://habrahabr.ru/post/256825/
Мне понравилось
var res = (sum: 0, count: 0, option :( sum: 0, count: 0));
Здравствуйте, s22, Вы писали:
s22>http://habrahabr.ru/post/256825/
s22>Мне понравилось
s22>s22>var res = (sum: 0, count: 0, option :( sum: 0, count: 0));
s22>
Теперь в коде будут грустные смайлики и дочитать сигнатуру метода до названия и параметров смогут только самые терпеливые читатели.
Здравствуйте, s22, Вы писали:
s22>http://habrahabr.ru/post/256825/
s22>Мне понравилось
s22>s22>var res = (sum: 0, count: 0, option :( sum: 0, count: 0));
s22>
Сейчас есть
var v = new { Amount = 108, Message = "Hello" };
// Rest the mouse pointer over v.Amount and v.Message in the following
// statement to verify that their inferred types are int and string.
Console.WriteLine(v.Amount + v.Message);
по аналогии
var res = new {sum= 0, count=0, option = new { sum= 0, count = 0}};
Здравствуйте, Serginio1, Вы писали:
S>Сейчас есть
У анонимных типов C# 3.0 есть существенные ограничения: их можно использовать статически типизировано только в пределах одного метода, а динамически типизировано (возвращаем object, обращаемся через dynamic) — только в пределах сборки. В статье по ссылке топикстартера рассказывается про внедрение в C# типа данных "запись", известного во всех языках, поддерживающих сопоставление с образцом. Собственно, без ПМ этот тип данных довольно бесполезен.
UPD. Жду когда народ сообразит досыпать в эти структуры данных лямбды и захочет реализовывать интерефейсы
Здравствуйте, s22, Вы писали:
s22>Мне понравилось
s22>s22>var res = (sum: 0, count: 0, option :( sum: 0, count: 0));
s22>
Дотнет не заточен под это дело. Именаованные поля могут быть только в именованных типов. Если создавать оные компилятором, то будут дубликаты типов в разных сборках и несовместимость между ними. Тут надо или допиливать дотнет, или реализовывать параллельные метаданные и таскать их везде где могут появиться такие "кортежи". Ну, и это уже не кортежи, а записи (records).
Для C#-а все это несколько печально, так как записи почти идентичны безымянным типам и будут дублировать функциональность. По уму нужно тупо допилить анонимные типы, а не вводить новые сущности.