Как стать автором
Обновить

Комментарии 22

Разве WinForms не стал кроссплатформенным? Вроде же заводился под *nix

При инициализации массивов в значении индекса разрешено использование оператора "^" для отчёта индекса с конца массива (например, "buffer = { [^1] = 0,....}" запишет 0 в последний элемент)

[-1] = 0 показалось слишком неинтересным?

^ превратится не в int, а в Index

Божечки-ежики, они придумали специальный класс для индекса массива! о_О

Структура, наверное. Тогда какая разница, инт или индекс. Может потом слайс сделают, это ж точно структура будет.

Вообще не логично это всё. Логично было бы

[^0] = 0

Оф. документация наталкивает меня на мысль, что это связано с диапазонами:

A range specifies the start and end of a range. The start of the range is inclusive, but the end of the range is exclusive, meaning the start is included in the range but the end isn't included in the range. The range [0..^0] represents the entire range...

Так это делает запись

[^0] = 0

Ещё более логичной и правильной получается)

^0 == sequence.Length
[^0] => exception
[0..^0] ≈ for ( var i = 0; i < sequence.Length; i++ )

Как-то так

P.S. Где-то, вроде, я читал официальное обоснование данного варианта, но сходу не нашёл.
UPD: Вот "официальный" ответ. Взял в кавычки, т.к. не нашёл того комментария, на который ссылается автор поста.

История о том, как пытаться сделать нормально, а изобрести всё неправильно)

логично но не красиво. во всех языках, итератор с конца, указывает за последний элемент.

Как бы да, но обычно это из-за того, что -0 и 0 не различить в этих языках. Здесь же изобрели новый синтаксис с угловой скобкой, могли бы и нормально изобрести)

Да и не нужен -0, в других языках [-1] это последний элемент списка.

В C# можно создавать массив с индексацией, начинающейся не с 0 (в том числе и с отрицательным значениями). Поэтому такой синтаксис не совместим.

2024 год. Microsoft все еще не определилась с графической библиотекой для разработки под Windows.

Ну как, они сидят пилят WinUI 3. Проблема в том, что даже их собственные команды не хотят это жрать, а мечутся между электроном и webview.

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

не сказал бы, что go как то сильно производительнее чем c# на том же net8, но вот потребление памяти (даже с учётом улучшений в новых версиях dotnet) и особенно размер бинарника это да

Что то я в этих 1000 не нашёл, одного когда выпустит Ms no-code, c тем же питоном. Чтобы можно было создовать объектную модель данных и она автоматом создовала хранилище данных или no-sql БД или в гребанном и неправильном sql. Ну или как вариант в кеш СУБД. В своё время был классный продук foxpro аля visual foxpro, которы Ms купил и убил. Ибо посчитал его конкурентом своих продуктов. А вот маленький человек со своей командой создал такой продук называется no-code VisualData со своей обьектной бд no-sql. Которая позволяет всё это делать, создовать приложение и автоматом генерить хранилище данных.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Другие новости