Я не понимаю. Оператор As
:
Тогда почему работает следующее?
struct Baby : ILive
{
public int Foo { get; set; }
public int Ggg()
{
return Foo;
}
}
interface ILive
{
int Ggg();
}
void Main()
{
ILive i = new Baby(){Foo = 1} as ILive; // ??????
Console.Write(i.Ggg()); // Output: 1
}
-
Baby
- это структура, создающая ее, ставит значение вstack
. Здесь нет ссылки. -
Здесь, конечно, нет типов с нулевым значением.
Любое объяснение, почему я ошибаюсь?