これはMicrosoftC#コンパイラのバグですか、それとも構文が私が知らない目的を果たしているのでしょうか?
class P1
{
class P2 : P1
{
class P3 : P2
{
void Foo()
{
P3 p3 = this as P2.P3;
P2 p2 = this as P3.P2; // ?!?
}
};
};
};
編集:私はそれがVS2010でうまくコンパイルされることを言及する必要があります。