![]() |
1
9
你的问题代码没有问题。这个
应该编译得很好。但是,“base::f()”的调用方需要看到 定义 “派生”的。 |
![]() |
2
8
您可以使用指针(或引用):
但这对我来说是代码的味道。为什么从这个类继承的任何人都需要知道另一个派生类?实际上,为什么基类应该关注它的派生类?
对于您的情况,您需要注意到一些事情,它们可能是坏设计的信号。虽然你的边界框可以从
我不确定最好的解决办法,但你可以
我仍然觉得有更好的方法,但我现在没有时间了,我相信其他人会想出更好的解决方案。 |
![]() |
3
4
为什么不这么做:
|
![]() |
4
4
你对模板的看法并不一定是坏的。你所描述的叫做 Curiously Recurring Template Pattern . 一个例子:
|
![]() |
5
3
我会返回一个指向基的指针,这样基就不需要知道派生的或以后出现的任何其他内容:
|
![]() |
6
2
正如其他人指出的,您所拥有的代码示例
可以
可以使用,但您可能想从返回指向基类的指针
在您的阐述中,您提到边界框是形状的一个子类,但存在一个问题:
让我们把一些责任转移到:
您的应用程序现在可能需要保存
|
![]() |
iasonas · 如何检查自定义注释? 4 月前 |
![]() |
Svyat · 如何创建一个类设置,其中两个类各包含另一个类的实例? 5 月前 |
![]() |
F-22 Destroyer · 遇到super()问题 9 月前 |
|
simply lemon · python上链表的添加方法 9 月前 |