読者です 読者をやめる 読者になる 読者になる

無気力生活 (ノ ´ω`)ノ ~゜

脱力系エンジニア。てきとーに生きてます。

コンストラクタに引数のあるクラスを継承する方法

ちょっと嵌ったのでメモメモ

基本クラス
  public abstract class BaseClass
  {
    private int count = 0;
    public BaseClass(int count) { this.count = count; }
    public void Show()
    {
      Console.WriteLine(
        String.Format("count is {0}\n", this.count));
    }
  }

実行している処理
  public class Class1 : BaseClass
  {
    public Class1(int count) : base(count) { } // ここがキモ
    public new void Show()
    {
      base.Show();
    }
  }

メインのコンストラクタに ": base(<変数名>)"指定する必要があるみたいです。
単純に"public Class1(int i)"とかやったらコンパイラがエラー吐きまくって困った(´;ω;`)