E2171 関数 'function' の本体はすでに定義されている (C++)

提供: RAD Studio
移動先: 案内検索

コンパイラのエラーと警告(C++):インデックス への移動

この名前と型の関数は,すでに関数本体が指定されています。

関数本体は一度だけ指定できます。

このエラーの原因の 1 つは,実装するデフォルトコンストラクタを宣言していないことです。例を示します。



 class A {
 public:
    virtual myex();
 };
 A::A() {} // エラー



クラス宣言でデフォルトコンストラクタが宣言されていないため,これをコンパイラが生成する必要があり,後でコンストラクタが見つかると,エラーメッセージが表示されます。正しい例を示します。



 class A {
 public:
    A();
    virtual myex();
 };
 A::A() {}