C++ cpp中的类java类

C++ cpp中的类java类,c++,reflection,C++,Reflection,我想写一个支持多种命令类型的程序。 为了使它更通用,更易于为以后的新命令扩展,我想为每个命令编写一个类(具有自己的处理),并使用handler函数调用基“command”类。 我知道,在Java中,有一个类可以帮助处理这样的事情——决定“流”它所处理的类的类型。 cpp是否有类似的机制?如果是,它是什么?我如何使用它? 如果没有,我可以做些什么来保持它易于扩展 非常感谢。您可以使用,但我建议您找到另一种方法。您可以使用纯虚拟方法实现命令类 尽管在Java中可以使用类来决定流,但最好使用多态性-它

我想写一个支持多种命令类型的程序。
为了使它更通用,更易于为以后的新命令扩展,我想为每个命令编写一个类(具有自己的处理),并使用handler函数调用基“command”类。
我知道,在Java中,有一个类可以帮助处理这样的事情——决定“流”它所处理的类的类型。
cpp是否有类似的机制?如果是,它是什么?我如何使用它?
如果没有,我可以做些什么来保持它易于扩展


非常感谢。

您可以使用,但我建议您找到另一种方法。

您可以使用纯虚拟方法实现命令类


尽管在Java中可以使用类来决定流,但最好使用多态性-它使类在不需要修改的情况下开放扩展(SOLID中的“O”)

<>在C++中也是如此。您可以使用RTTI,但虚拟方法允许您使用命令扩展类,而无需修改它

来自Gamma等人的“设计模式”:

这种模式的关键是一种抽象 命令类,该类声明 用于执行操作的接口。在里面 它最简单的形式就是这个接口 包括一个抽象执行 手术