Как компилятор C# Visual Studio обрабатывает сравнения struct/NULL? [дубликат]C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как компилятор C# Visual Studio обрабатывает сравнения struct/NULL? [дубликат]

Сообщение Anonymous »

Мы только что столкнулись с таким плохим кодом в нашей кодовой базе C#.net 4

Код: Выделить всё

DateTime myDate = someValue;
If (myDate==Null)
Do Something
Нам пришло в голову, что такое условие никогда не произойдет.

Как компилятор обрабатывает эти сравнения структур, не допускающие значения NULL?

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

Код: Выделить всё

If(1==2)
Что также никогда не разрешит true... но в этом случае компилятор легко определит, что это константы. Оптимизирует ли он или объединяет сравнения, не допускающие значения NULL?

Подробнее здесь: https://stackoverflow.com/questions/940 ... omparisons
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Polars struct.field(list[str]) возвращает один столбец при работе со списком[Struct]
    Anonymous » » в форуме Python
    0 Ответы
    32 Просмотры
    Последнее сообщение Anonymous
  • Почему struct {u64} быстрее, чем struct {u32, u32}?
    Anonymous » » в форуме C++
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Перегрузка операторов сравнения для простых `struct 'удерживает много численных полей
    Anonymous » » в форуме C++
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Перегрузка операторов сравнения для простых `struct 'удерживает много численных полей
    Anonymous » » в форуме C++
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Операторы сравнения перегрузки для простых стручков `struct`s удерживают много численных полей
    Anonymous » » в форуме C++
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»