|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
ЕвгенийВНа то пошло, там нет циклов и переменных и вообще никаких рудиментов вроде классов, соответственно solid и всякие IoC в топку. На то пошло, F# - это абсолютно совсем другая парадигма. Сравнивать его с C#.. ну, это примерно как C# сравнивать с SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2019, 16:25 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
Сон Веры ПавловныКакая-то неуклюжая попытка что-то сделать так, как надо было делать ровно наоборот: non-nullable reference types с синтаксисом типа Код: c# 1.
Это сильно противоречит имеющемся синтаксису nullable типов. Изначально мне тоже казалось, что non-nullable лучший вариант, и может уживаться с текущим кодом. Но нет. Библиотеки должны быть обратно совместимы. А string! это совершенно новый тип, его протаскивать надо везде. В аргументах, в свойствах и локальных переменных. Поэтому не катит. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2019, 21:52 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
SiemarglБезотносительно C#8, вместо string отлично передается null, как объектный тип ) Попытка подстелить соломку ? Статическая проверка типов. Всё по феншую. Изначально ссылочные типы шли вразрез с этой идеей. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2019, 21:54 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
ЕвгенийВНи каких вопросов :) Код: c# 1. 2.
Это костыль ) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2019, 21:55 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
hVosttА string! это совершенно новый тип, его протаскивать надо везде. В аргументах, в свойствах и локальных переменных. Поэтому не катит. string? тоже надо, я выше давал ссылку, где чувак описывает случаи. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2019, 22:02 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
hVosttЕвгенийВНи каких вопросов :) Код: c# 1. 2.
Это костыль ) Не костыль. Сам недавно чудом узнал, что если у структуры переопределен == то на сравнение с null компилятор не ругается ) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2019, 22:04 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
ЕвгенийВНе костыль. Сам недавно чудом узнал, что если у структуры переопределен == то на сравнение с null компилятор не ругается ) Там дело не в переопределении, по-моему. Просто структура отбоксится в object а потом сравнится с null. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2019, 22:23 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
fkthatЕвгенийВНе костыль. Сам недавно чудом узнал, что если у структуры переопределен == то на сравнение с null компилятор не ругается ) Там дело не в переопределении, по-моему. Просто структура отбоксится в object а потом сравнится с null. Нет, я был не прав, там все еще хитрее. Ругаться компилятор не ругается, но все равно поступает умно и сравнение просто сразу же заменяет на false. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2019, 22:33 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
ЕвгенийВstring? тоже надо, я выше давал ссылку, где чувак описывает случаи. ну ок, смотрим: Код: c# 1. 2. 3.
Если бы МС пошли на такое, это был бы знатный фейл. Хорошо, что не облажались ) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2019, 00:09 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
ЕвгенийВНе костыль. Сам недавно чудом узнал, что если у структуры переопределен == то на сравнение с null компилятор не ругается ) Собственно в этом и есть костыль, реализованный через переопределение ) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2019, 00:10 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
hVosttА string! это совершенно новый тип Ну да, аналогично было, когда вводились nullable value types. hVosttего протаскивать надо везде. В аргументах, в свойствах и локальных переменных. Поэтому не катит. Зачем? Когда вводились nullable value types, никто везде массово не менял int на int?, и не протаскивал Nullable<T> везде. Новая фича - для новых проектов, и рефакторинга старых по мере необходимости и наличия свободного времени. Старая остается на своем месте, и с ней работают по-старому. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2019, 06:10 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
fkthatЕвгенийВНе костыль. Сам недавно чудом узнал, что если у структуры переопределен == то на сравнение с null компилятор не ругается ) Там дело не в переопределении, по-моему. Просто структура отбоксится в object а потом сравнится с null. Ответ Липперта . ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2019, 07:30 |
|
C# 8 preview: Nullable reference types
|
|||
---|---|---|---|
#18+
Сон Веры ПавловныhVosttА string! это совершенно новый тип Ну да, аналогично было, когда вводились nullable value types. Так это и были новые типы и соответствующая поддержка языка. Вводить обратное -- явное противоречие, с которым сложно будет работать. Сон Веры ПавловныЗачем? Когда вводились nullable value types, никто везде массово не менял int на int?, и не протаскивал Nullable<T> везде. Не скажи. Менял object на Nullable<T>. И протаскивал :) Сон Веры ПавловныСтарая остается на своем месте, и с ней работают по-старому. Обратная совместимость должна быть не только синтаксическая, но и семантическая. int => int? string => string? логично? да. int => int? !string => string херень какая-то. особенно для классов и структур. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2019, 21:28 |
|
|
start [/forum/topic.php?fid=20&msg=39821019&tid=1398923]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
127ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 259ms |
total: | 486ms |
0 / 0 |