.NET 4.x Инициализация переменных - C#
Формулировка задачи:
Почему при вхождении в метод ссылочные поля не инициализируются дефолтными значениями?
Листинг программы
- SomeComOblect classVar;
- public Method()
- {
- SomeComOblect usedVar = null;
- SomeComOblect defVar = default(SomeComOblect );
- SomeComOblect errorVar;
- if (classVar.GetTitle() == "Some") {} //Нет еррорки на этапе комплиляции
- if (usedVar.GetTitle() == "Some") {} //Нет еррорки на этапе комплиляции
- if (defVar.GetTitle() == "Some") {} //Нет еррорки на этапе комплиляции
- if (errorVar.GetTitle() == "Some") {} //Еррорка! Явный ссылочный же тип? Чего б в null не перевести???
- }
Или типа на явном
null
я могу методы вызывать, а блин на неявном - нет
Типа а вдруг null
ссылка умеет что-то??? Решение задачи: «.NET 4.x Инициализация переменных»
textual
Листинг программы
- //2 строчки кода в методе
- IMyInterface innerInterface = null;
- string test = innerInterface.GetTitle(); // компилится без ошибок =-O
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д