C では、抽象基本クラス (ABC) を使用してインターフェイスを宣言できます。 ABC は、少なくとも 1 つの純粋仮想メソッドを持つクラスです。純粋仮想メソッドは、キーワード = 0 で宣言されるメソッドです。
class IDemo { public: virtual ~IDemo() {} virtual void OverrideMe() = 0; };
上記の例では、IDemo は、OverrideMe という名前の純粋仮想メソッドを持つ ABC です。 IDemo から継承したクラスは、OverrideMe の実装を定義する必要があります。それ以外の場合、IDemo を使用して、さまざまな具象クラスで実装できるインターフェイスを表すことができます。
class Parent { public: virtual ~Parent(); }; class Child : public Parent, public IDemo { public: virtual void OverrideMe() { // Do stuff } };
インターフェイス内の純粋な仮想メソッドのリストの例外は、仮想デストラクターを追加することです。これにより、具体的な派生クラスを公開することなく、ポインタの所有権を別の当事者に渡すことができます。インターフェイスには具体的なメンバーがないため、デストラクターは何もする必要がありません。
class IDemo { public: virtual ~IDemo() {} virtual void OverrideMe() = 0; };
結論として、インターフェイスはクラスの抽象プロパティとメソッドを表すために使用できます。純粋な仮想メソッドを使用して ABC を作成すると、それを継承するクラスがインターフェイス メソッドの実装を定義する必要があることが保証されます。さらに、インターフェイスに仮想デストラクターを追加すると、ポインターの所有権を安全に転送できるようになります。
以上が抽象基本クラスを使用して C でインターフェイスを定義するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。