Как стать автором
Обновить
2
Карма
0
Рейтинг

Пользователь

  • Подписчики
  • Подписки 1

Компилятор C# 10, .NET 6 и интерполяция строк

DefaultInterpolatedStringHandler и немного магии легко превращается в...: String Interpolation Trickery and Magic with C# 10 and .NET 6 - RandomDev (btburnett.com)

Лопасти для ветряка на 3D-принтере (создание ветрогенератора, часть 1)

А как Вы рассчитывали прочность при печати слоями поперек нагрузки?

Какой сейчас пластик для 3D-принтера выдерживает прямые солнечные лучи, перепады температур, дождь, снег и олединение?

Ася Казанцева: Зачем нужно спать и как делать это правильно

"Физнагрузка мешает засыпанию, если заниматься меньше, чем за 2 часа до сна." - я, после тренировки, дома вырубался, коснувшись кровати.

Создание статического анализатора для C# на основе Roslyn API

Спасибо огромное!

Свершилось! PVS-Studio поддерживает анализ проектов под .NET 5

Еще 1 момент в PVS-Studio не учтен. C# 9 можно легко прменить в Framework.NET проектах:
  <PropertyGroup>
    <LangVersion>preview</LangVersion>

На таких проектах выражения (_propery is not null) приводят к ложным:
V3125 The '...' object was used after it was verified against null.

Должен ли out-параметр быть проинициализирован до возврата из метода?

Все поля структур должны быть проинициализированы. А если полей нет, зачем требовать?
Имхо, довольно логично добавить код, проверяющий, что «пустая» структура не должна требовать инициализации. Например, такая:

public struct MyStruct { public string _test => "Test"; }

static void CheckYourself(out MyStruct obj) { } // no compilation error

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность