答えて
一般的に「インターフェイス」クラス(ほぼすべてのオブジェクト指向言語)は、インターフェイスのみを備え、データがなく、実装されていないクラスです。
C++では、このようなクラスは純粋な抽象関数のみを持つクラスであるため、非仮想関数を持つ場合はC++で "interface"クラスを持つことはできません。
おかげさまでヨアキム私はあなたの答えを理解しています –
C++にはインターフェイス自体がありません。したがって、それらには何らの制限も課されない。
抽象クラスは、通常、インターフェイスを表すために使用されます。仮想メソッドのデフォルトの実装を定義し、インターフェースのようなクラスの最終メソッドを許可するかどうかは、規約の問題です。
C++ 11以来、 'virtual'を意味する文脈キーワード' final'があるので、最後の文は非仮想関数と最終的な仮想関数を参照しようとすると少し曖昧です。 –
「最終的に」私は昔ながらのヴィンテージ決勝戦を意味し、「バーチャル」のキーワードが付いていないものを意味していました。 「非仮想」は、おそらくより正確な用語になります。 – bipll
まあ、皮肉なことに、 "非仮想最終"は派生した関数で隠すことができますが、実際の最終は隠すことができないので、実際にはもっと最終的なものです:-) –
- 1. インタフェース対100%抽象クラス
- 2. インタフェースと抽象クラス
- 3. インタフェースと抽象クラス?
- 4. インタフェースと抽象クラス
- 5. 抽象クラス対抽象クラス
- 6. c#インタフェース、抽象クラス、強制継承クラスを抽象クラスではない
- 7. クラス階層の設計 - インタフェース+基底クラス対抽象クラス
- 8. 抽象クラスとのインタフェース
- 9. PHP抽象クラスとインタフェース
- 10. インタフェースと抽象クラスのコンストラクタ?
- 11. 抽象クラスV/sのインタフェース
- 12. 代理人(ラムダ式)対インタフェースと抽象クラス
- 13. C#抽象クラス/インタフェースをエクスポートするC++ DLL関数の消費?
- 14. この場合のインタフェースと抽象クラス
- 15. インタフェースと抽象化
- 16. C#抽象クラスInstanitiation
- 17. Javaの抽象クラスは、私はそれを実装して、次のインタフェースと抽象クラスを持つインタフェース
- 18. 抽象とインタフェースは、Java
- 19. 抽象メソッドとクラスC#
- 20. 抽象クラス/メソッド、C# - > VB.NET
- 21. C#の抽象クラスとメソッド
- 22. C++抽象/具象クラスの宣言
- 23. Java抽象クラス、抽象コンストラクタ
- 24. 抽象クラスと抽象メソッド
- 25. Javaのインタフェース/抽象クラスの動的実装
- 26. 概念上の相違点:完全抽象クラスv。インタフェース
- 27. 抽象クラスまたはインタフェースのpublic static finalフィールド
- 28. 抽象クラスとインタフェースをいつ使用するのですか?
- 29. インタフェースを実装する抽象クラスのメソッドオーバーライド
- 30. インタフェース内の抽象クラスにアクセスする方法
「インターフェース」とはどういう意味ですか? –