クラス '<classname1>' の基本クラス '<classname2>' には、引数なしで呼び出される、アクセス可能な 'Sub New' が 2 つ以上指定されているため、このクラスで 'Sub New' を宣言してください。

更新 : 2007 年 11 月

派生クラスでコンストラクタが宣言されていません。Visual Basic では、どの基本クラス コンストラクタを呼び出すのかがわからないため、コンストラクタを生成できません。

派生クラスでコンストラクタが宣言されない場合、Visual Basic は、MyBase.New() を呼び出す暗黙的なパラメータなしコンストラクタを生成しようとします。引数なしで呼び出せるアクセス可能なコンストラクタが基本クラスに存在しない場合、または複数存在する場合、Visual Basic では、暗黙的なコンストラクタを生成できません。

このような状況は、ある基本クラス コンストラクタが単一の Optional 引数を持ち、別の基本クラス コンストラクタが単一の ParamArray 引数を持っている場合などに発生します。これらのコンストラクタは引数なしで呼び出すことができます。

Error ID: BC32036

このエラーを解決するには

  1. 派生クラス内に最低 1 つの Sub New コンストラクタを宣言および実装します。

  2. すべての Sub New の 1 行目に、基本クラス コンストラクタ MyBase.New() の呼び出しを追加します。

参照

概念

オブジェクトの有効期間 : オブジェクトの作成と破棄

省略可能なパラメータ

パラメータ配列

参照

コンストラクタとデストラクタの使用方法

Optional (Visual Basic)

ParamArray