0

在我的项目中,我有一个父类 CWnd,它是链下类的基本 win32 窗口。然后我使用模板声明创建这个类的实例,这样我就可以拥有许多不同类型的窗口。

然后我像这样添加成员:

void CChildWndClass::OnSize(HWND hWnd, UINT state, int nWidth, int nHeight)
{
    // do something
}

问题是这些成员是虚拟的。在某些事件(即:OnDestroy)中,我想在每个窗口类中执行一些代码,而不必将粘贴复制到每个子类中,因为它会覆盖父级原始代码。

如何让子类中的函数将它们的代码附加到它们自己,而不是覆盖?

4

1 回答 1

0

子类化为具有您想要的功能的类,然后从您自己的类中子类化以获得类似的子类。

你不想实现的方法,干脆不要,它们在子子类中仍然是虚拟的。

在这些情况下,人们还使用制作库。

于 2012-06-10T06:20:00.187 回答