有一个开发参考,所有的类希望有一个祖宗,命名为Object,Object应该包含以下成员(仅供参考)
1、对象名字:string
2、对象Hash:根据名字计算
3、提供测试借口(纯虚)
4、提供渲染方法(纯虚)
好处是,我通过例子说明:
你的引擎中应该包含许多控件类吧,他们可以从Object派生,好处是无论按钮,文本扩还是列表框,实例化以后可以强制转换到Object指针。
如果有个界面类(Dlg),其中包含一个链表存放各种各样的空间,那么Dlg渲染这些空间的时候,Dlg只需要提供一个Render成员,由于所有空间都可以转化成Object类,并且每个具体的空间类都已经实现渲染方法,那么只要简单的在Dlg的渲染方法中遍历链表调用每一个控件类(强制转换为Object,不必考虑具体是哪个控件)中的渲染方法。
另外,在Object中命名好处是可以将所有新建的类通过一个类管理器存入Hash表,便于运行时通过名字找到所需要的实例,设计方法参考MFC;一个类不必过于强大,包含很多功能,学会将繁重的任务一点一点往后代身上推,这也就是为什么父母将希望总是寄托于后代。
PS:我理解楼主迫切开发的心情,但是设计是非常重要的,从某种程度上决定了一个软件的好坏与成败,掌握设计方法是成功开发必不可少的环节,推荐楼主读一下设计模式并且阅读以下MFC部分源代码(通过建一个工程,进行单步进入,另外看看MFC类的关系)
[[it] 本帖最后由 yuki 于 2008-7-2 22:18 编辑 [/it]]