web-dev-qa-db-ja.com

Java C ++のインターフェイスと同等ですか?

重複の可能性:
C++でインターフェイスをどのように宣言しますか?
Java in c ++? のようなインターフェース

私はJavaプログラマーがC++を学んでいますが、C++にはJavaインターフェイス、つまり別のクラスが実装/拡張できるクラスがあるかどうか疑問に思っていました。ありがとう。psここで新しいので、何か間違ったことをしたかどうか教えてください。

16
nickbrickmaster

C++では、純粋仮想メソッドのみを含むクラスはインターフェイスを示します。

例:

// Define the Serializable interface.
class Serializable {
     // virtual destructor is required if the object may
     // be deleted through a pointer to Serializable
    virtual ~Serializable() {}

    virtual std::string serialize() const = 0;
};

// Implements the Serializable interface
class MyClass : public MyBaseClass, public virtual Serializable {
    virtual std::string serialize() const { 
        // Implementation goes here.
    }
};
26
StackedCrooked