Информация об изменениях

Сообщение Re: C# 9. Candidate Features от 04.06.2019 19:57

Изменено 04.06.2019 20:04 Jack128

Re: C# 9. Candidate Features
Здравствуйте, BlackEric, Вы писали:

BE>Еще не успел выйти C#8, а уже пошло обсуждение 9го:


BE>Candidate Features For C# 9


BE>Из значимого UTF8String:

BE>
BE>System.UTF8String myUTF8string ="Test String";  
BE>

BE>Востребованность остального мне пока не ясна.

Вот востребованность дефолтового конструктора для структур не ясна, всё равно же var r = (new Rational[1])[0] поломает все инварианты. В остальном логика вроде есть.
Re: C# 9. Candidate Features
Здравствуйте, BlackEric, Вы писали:

BE>Еще не успел выйти C#8, а уже пошло обсуждение 9го:


BE>Candidate Features For C# 9


BE>Из значимого UTF8String:

BE>
BE>System.UTF8String myUTF8string ="Test String";  
BE>

BE>Востребованность остального мне пока не ясна.

Вот востребованность дефолтового конструктора для структур не ясна, всё равно же var r = (new Rational[1])[0] поломает все инварианты. В остальном логика вроде есть.

--
updated

Но лично я бы — нафиг литералы для словаря выкинул. Где вообще логика, для в разы более часто используемого List<> нету литералов, а для словаря вот нате. Лучше бы вывод типов для generic аргументов классов завезли бы.
var dict = new Dictionary<_, _> { { "key1", 0}, { "key2": 1} };


помогло бы и словарях, и листах и еще в туче вариантов использования.