gpt4 book ai didi

c++ - "Multiplicity of implementation"- 如何处理?什么 's the ' name' 这样的东西?

转载 作者:太空宇宙 更新时间:2023-11-04 15:51:43 25 4
gpt4 key购买 nike

我的问题是关于编程技术或设计模式的。假设几个派生自 base 的类包含一个纯虚方法,该方法应该在它们之间进行一些交互。

例如,RectangleEllipseTriangleLine - 全部派生自 Shape 。这个抽象类 Shape 包含 virtual bool Intersects(Shape* another) = 0

It seems, 我需要进行六个实现,对吧(顺便说一句,在这个特定示例中有更好的解决方案吗?)。

目前我不知道任何其他示例。

也许我在谈论一个众所周知的事情,我几乎可以肯定有一些名字描述了这项技术。但是,我什至不知道输入什么才能在互联网上找到它。

好吧,你能告诉我如何实现这样的东西吗(我仍然想知道是否需要任何辅助方法,或者,也许是 RTIIdynamic_cast? ) 或指出有关它的一些来源(艺术、教程或其他)?

最佳答案

这是double dispatch的课本示例,wikipedia文章对问题和解决方案给出了很好的描述:

http://en.wikipedia.org/wiki/Double_dispatch

如果我没记错的话,在 Andrei Alexandescu 的“现代 C++ 设计”一书中有一个非常优雅的问题解决方案

http://www.amazon.com/Modern-Design-Generic-Programming-Patterns/dp/0201704315

关于c++ - "Multiplicity of implementation"- 如何处理?什么 's the ' name' 这样的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7150982/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com