13
голосов
6ответов
3819 просмотров

Альтернативы типам, допускающим значение NULL, в C #

Я пишу алгоритмы, которые работают с сериями числовых данных, где иногда значение в серии должно быть нулевым. Однако, поскольку это приложение критично к производительности, я избегал использования типов, допускающих значение NULL. Я проверил алгоритмы, чтобы специально сравнить производительно...

12
голосов
7ответов
3065 просмотров

Ссылочные типы, не допускающие значения NULL

Я разрабатываю язык, и мне интересно, разумно ли по умолчанию сделать ссылочные типы не допускающими значения NULL и использовать "?" для значений, допускающих значение NULL, и ссылочных типов. Есть ли с этим проблемы? Что бы вы с этим сделали: class Foo { Bar? b; Bar b2; Foo() { ...

38
голосов
6ответов
27538 просмотров

Почему значение null не разрешено для DateTime в C #?

Почему в C # нельзя присвоить значение null для DateTime? Как это было реализовано? И можно ли использовать эту функцию, чтобы сделать ваши собственные классы непустыми? Пример: string stringTest = null; // Okay DateTime dateTimeTest = null; // Compile error Я знаю, что могу использова...

7
голосов
7ответов
1750 просмотров

О дебатах о типах, не допускающих значения NULL

Я все время слышу, как люди говорят о том, как ссылочные типы, не допускающие значения NULL, могут решить так много ошибок и значительно упростить программирование. Даже создатель null называет это своей ошибкой в ​​миллиард долларов и В спецификации № для решения этой проблемы были введены ...

21
голосов
7ответов
51253 просмотров

Создание типа значения, не допускающего значения NULL

У меня есть простая структура, которую можно использовать ограниченно. Структура создается в методе, который вызывает данные из базы данных. Если из базы данных не возвращаются данные, я хочу иметь возможность вернуть значение NULL, но Visual Studio жалуется: «Невозможно преобразовать значение N...

0
голосов
3ответов
1009 просмотров

Как я могу выполнить запрос к набору данных, который возвращает в таблицу разные столбцы?

Я пытаюсь извлечь данные из таблицы SQL в моем наборе данных с помощью C #. В этом случае мне не нужны все столбцы, только несколько конкретных, однако, поскольку я не возвращаю столбец с обязательным NOT NULL, копия таблицы выдает исключение "Failed to enable constraints. One or more rows...

3
голосов
1ответов
476 просмотров

Что не так с объектами, не допускающими значения NULL?

В последнее время я смотрел на DbC и Spec #, которые, похоже, поддерживают объекты, не допускающие значения NULL. К сожалению, от Spec #, похоже, отказались. В Spec #, похоже, было встроено множество хороших языковых функций, так почему от него отказались? Возникнет ли проблема, если все о...