考虑这样一种情况,有两个类,即基类和派生类。如果基类想调用派生类的函数,则可以通过创建一个虚函数并在派生类中定义该VF或使用回调来实现。我想知道在这两个选项中应该选择哪一个?选择其中之一取决于哪些情况/条件?
编辑:问题澄清:
我所指的情况是有一个基类接收消息。这些不同的消息需要由派生类以不同的方式处理,因此一种方法是创建一个虚函数,并让派生类实现它,通过各种开关情况处理每个消息。
另一种方法是通过函数指针(指向派生类函数)在模板内实现回调(模板用于处理派生类对象和函数名称)。模板和函数指针将驻留在基类中。
编辑:问题澄清:
我所指的情况是有一个基类接收消息。这些不同的消息需要由派生类以不同的方式处理,因此一种方法是创建一个虚函数,并让派生类实现它,通过各种开关情况处理每个消息。
另一种方法是通过函数指针(指向派生类函数)在模板内实现回调(模板用于处理派生类对象和函数名称)。模板和函数指针将驻留在基类中。