我有一个class A
,我需要A class B: public A
的子类。我怎样才能实现我可以从这个类继承,但没有人可以从这两个类继承? 如果我让class A
最终B不能继承A.只能从班级继承一次
1
A
回答
2
正如我评论:我不清楚你想要什么。你想B
能够从A
继承,但是没有新的类能够从任何一个继承?按照这个假设,你最好的选择是让A
的私人和朋友B
,同时使B
最终。
我不知道你在做什么,设计明智,但这是糟糕的设计。但它确实回答了你的问题。
5
C++没有办法说只有一个类可以从另一个类继承。或者一个班级是final
(因此不可以),或者不是。
绝对最好你可以做的是有A
宣布它的构造函数私人并使B
朋友A
。但是这会让其他用户难以创建A
类型的对象。
2
只是一个想法(虽然我不认为这实际上是一个很好的设计):虽然之前提到
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
除非你想有更多的类实例化如class B
。
相关问题
- 1. 我怎样才能找出我的班级从哪个班级继承?
- 2. 从一个班级继承以后会伤害你吗?
- 3. 班级继承的最佳设置
- 4. 如何从我的班级列表中找到从特定班级继承的班级?
- 5. 从我的班级的Bs4继承方法
- 6. 只能继承从NSObject继承的类@objc
- 7. 从另一个班级访问班级?
- 8. 多级继承:从子类
- 9. 多级继承
- 10. 层次继承
- 11. 不能从我的班级执行继续
- 12. 继承错误:“期待的班级名称”{'token“
- 13. Eclipse IDE。查看所有班级的继承方法列表
- 14. 将信息从一个班级拉到另一个班级
- 15. 一个班级如何从另一个班级请求信息?
- 16. C# - 高级继承
- 17. Codeigniter多级继承
- 18. php4多级继承
- 19. 从另一个班级访问和更改班级成员功能
- 20. Java。从其他班级执行班级?
- 21. 从新班级取得班级
- 22. 有一个班级只有一个班级使用的设计很差吗?
- 23. 如何在另一个班级中多次引用同一班级?
- 24. 不能从基类继承
- 25. 代码第一次级联删除使用继承
- 26. 从另一个班级访问“班级会话”
- 27. 如何从另一个班级访问班级?
- 28. 如何从另一个班级访问班级?
- 29. 问题wile从另一个班级调用班级
- 30. 如何从一个班级移动到其他班级android
我不清楚你想要什么。你希望B能够从A继承,但是没有新的类能够从两者继承? – David
您可能想要将'A'和'B'类合并到一个类中,并声明该类为'final'。 – jotik