Сообщение Минутка WTF-12: из реального проекта от 03.11.2016 10:35
Изменено 08.01.2017 13:38 rameel
Минутка WTF-12: из реального проекта
Всем привет!
В дополнение к серии на тему различных WTF, начатаю ув. Sinix
Итак. Даны 2 примера кода:
Что здесь не так? Оба кода делают одно и тоже — возвращают забоксенное значение в случае, если там int и 0 в противном случае.
В дополнение к серии на тему различных WTF, начатаю ув. Sinix
Итак. Даны 2 примера кода:
[MethodImpl(MethodImplOptions.NoInlining)]
public static int GetNumber_1(object value)
{
var v = value as int?;
if (v != null)
return v.GetValueOrDefault();
return 0;
}
[MethodImpl(MethodImplOptions.NoInlining)]
public static int GetNumber_2(object value)
{
if (value is int)
return (int)value;
return 0;
}Что здесь не так? Оба кода делают одно и тоже — возвращают забоксенное значение в случае, если там int и 0 в противном случае.
| Код для проверки предположений (запускать без отладчика, Ctrl-F5): | |
| |
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Минутка WTF-12: из реального проекта
Всем привет!
В дополнение к серии на тему различных WTF, начатаю ув. Sinix
Итак. Даны 2 примера кода:
Что здесь не так? Оба кода делают одно и тоже — возвращают забоксенное значение в случае, если там int и 0 в противном случае.
В дополнение к серии на тему различных WTF, начатаю ув. Sinix
Итак. Даны 2 примера кода:
[MethodImpl(MethodImplOptions.NoInlining)]
public static int GetNumber_1(object value)
{
var v = value as int?;
if (v != null)
return v.GetValueOrDefault();
return 0;
}
[MethodImpl(MethodImplOptions.NoInlining)]
public static int GetNumber_2(object value)
{
if (value is int)
return (int)value;
return 0;
}Что здесь не так? Оба кода делают одно и тоже — возвращают забоксенное значение в случае, если там int и 0 в противном случае.
| Код для проверки предположений (запускать без отладчика, Ctrl-F5): | |
| |
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>