Код: Выделить всё
#nullable enable
public class Stuff {}
public abstract class Base {
public virtual Stuff? MakeStuff() => null;
public Stuff? MakeStuff2() => null;
}
public abstract class Derived : Base {
public override Stuff? MakeStuff() => base.MakeStuff();
}
Ошибка компиляции (строка 26, столбец 29): 'Derived.MakeStuff()': тип возвращаемого значения должен быть 'Stuff', чтобы соответствовать переопределенному элементу 'Base.MakeStuff()'
Ошибка компиляции (строка 26, столбец 29): тип «T» должен быть типом значения, не допускающим значения NULL, чтобы использовать его в качестве параметра «T» в универсальном типе или методе «Nullable».
Все это работает, когда значение NULL не включено.>
Подробнее здесь: https://stackoverflow.com/questions/699 ... ethod-in-c
Мобильная версия