0
class base_c
{
public virtual void a() {}
public virtual void b() {}
public virtual void c() {}
public virtual void d() {}
}
class other_c : base_c
{
public void a() {}
public new void b() {}
public override void c() {}
public override void d() {base.d();}
}
class Program
{
static void Main()
{
base_c game2 = new other_c();
game2.a();
game2.b();
game2.c();
game2.d();
}
}
'd'は、より一般的なbase_c関数とより具体的なother_cが発生するという望ましい振る舞いをしていますが、順序が逆であればいいと思います。これを実際に確認するには、デバッガを使用してプログラムを実行します。c#継承一般的なもの
この結果を得るには 'd'が最適ですか?
"base_c game2 = ..."はbase_cのままでなければならず、other_cに変更することはできません。
ty:¬)すばらしい簡潔でわかりやすい解答。 – alan2here