私にはがあり、サブクラスA class B: public A
が必要です。どのように私はこのクラスから継承することができますが、他の誰もこの2つのクラスから再び継承することはできません。 もし私がclass A
を作った場合、最終BはAから継承することができません。クラスから一度だけ継承
1
A
答えて
2
私はコメントしました:私はあなたが望むものが不明です。 B
はA
から継承できますが、いずれかのクラスから継承できる新しいクラスはありませんか?その前提の上に、A
の個人と友人をB
にして、B
を最終的にすることです。
私はあなたが何をしているのか分かりませんが、デザインは賢明ですが、これは悪いデザインです。しかし、それはあなたの質問に答えます。
5
C++では、あるクラスだけが別のクラスから継承することはできません。クラスがfinal
(したがって継承不可)であるか、そうではありません。
A
はコンストラクタをプライベートに宣言し、B
のフレンドをA
にしてください。しかし、それは他のユーザーがタイプA
のオブジェクトを作成することを困難にします。
class B;
class A {
// everything's private
friend class B; // << except for class B
};
class B final // << final prevents from further inheritance
: A {
public:
// What you want to publish ...
};
以前のように述べたけれども、あなたがより多くのクラスを持っている場合を除き、私はclass A
のためにその多くのポイントが表示されていない。(私はそれが良いデザイン、実際にはないと思うが)
2
ジャストアイデアインスタンシエーションはclass B
です。
関連する問題
- 1. COMクラスから継承
- 2. は2クラスから継承
- 3. だけ(継承されたクラスのメソッドを除く)クラス
- 4. クラス継承とインターフェイス継承
- 5. 継承クラスを使用したテンプレートクラスからの継承
- 6. Javaクラスを継承するKotlinクラスもAnyから継承しますか?
- 7. MasterpageとContentページを単一のクラスから継承する
- 8. Passed Typeからメンバーを継承する一般抽象クラス
- 9. だけ親のコンストラクタのパラメータの一部を継承
- 10. クラスから継承したクラスとDelphiのインターフェイスから継承するクラスを作成できますか?
- 11. UWPはUserControlから継承したクラスから継承します
- 12. MultiLevel継承、クラスCはクラスAを継承できますか?
- 13. 一般的なクラス、制約、継承
- 14. DbContextクラスから継承する方法
- 15. C++クラスからNSObjectを継承
- 16. 基底クラスからの仮想継承
- 17. 抽象クラスから継承するJava
- 18. クラスから継承するモジュール
- 19. Swift:プロジェクト内のクラスから継承
- 20. 抽象クラスから継承するケースクラス
- 21. 内部クラスから継承する
- 22. Superclassから継承するクラスにmongoengine
- 23. 非ormクラスからのSQLAlchemy継承
- 24. 親クラスからのC#プロパティの継承
- 25. クラス継承java
- 26. es6クラス継承
- 27. クラス継承PHP
- 28. C++クラス継承
- 29. VB.NetComクラス継承
- 30. Javascriptクラス継承
私はあなたが望むものが不明です。あなたはBがAから継承できるようにしたいが、どちらからも継承できる新しいクラスはない? – David
'A'と' B'クラスを一つのクラスにマージし、そのクラスを 'final'として宣言したいかもしれません。 – jotik