170 похожих чатов

Всем привет. Подскажите по теме null. Сейчас в доке увидел разделение

на ссылочные типы допускающие значение null и ссылочные типы не допускающие null. Разве не все ссылочные типы допускают null? Также увидел там пример string? name = null, но ведь мы можем присвоить null и без оператора '?'. Что запутался причём Албахари и Троелсен вообще не писали о 'string?'
Надеюсь корректно изложил вопрос.

10 ответов

8 просмотров

Это дополнительный контракт

это новая, свежая фича

1899- Автор вопроса
Andrey Filippov
Это дополнительный контракт

Ты имеешь в виду, что это просто рекомендация использовать оператор ?, чтоб случайно NRE не получить?

1899
Ты имеешь в виду, что это просто рекомендация испо...

эту фичу (nullable reference types) надо включать отдельно По умолчанию все реф типы налабл и сделать их НЕ налабл в сишарпе нельзя. И написать string? не получится. Обычный string может быть налом Когда ты включаешь эту фичу, то реф типы будут делиться на 3 лагеря - nullable (может присвоить null, тип пишется со знаком вопроса), non-nuillable (нельзя присвоить null, тип пишется БЕЗ знака вопроса), oblivious (нулабилити не установлена, может быть чем-то из первых двух). обычный string уже становится non-nullable и присвоить туда null не получится string? это уже nullable тип, как например int?

Andrey Filippov
null! Получится написать

null! это дичь String.empty это норма, что с ним не так?

Ayrat Hudaygulov
null! это дичь String.empty это норма, что с ним н...

Ну давай про null! Его как то можно запретить?

Andrey Filippov
Ну давай про null! Его как то можно запретить?

да, написать ишью чтобы компилятор делал из этого ошибку. А пока этот ишью будут чинить, написать кастомный анализатор

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта