读书人

mvc方式,你们是把业务类作为界面类的一

发布时间: 2013-02-17 10:44:46 作者: rapoo

mvc模式,你们是把业务类作为界面类的一个成员变量,还是继承自业务类
class 业务类
{
这里实现了业务上需要的所有操作。
}

假设用VC++来实现界面

CMyDialog:public CDialog
{

}
这里VC给出的CMyDialog定义方式。你们是习惯

CMyDialog:public CDialog
{
业务类 a;
}

还是
CMyDialog:public CDialog, public 业务类
{

}
[解决办法]
直观感觉应该是作为成员变量

[解决办法]
按照mvc
应该是 业务类 提供一个interface(C++对应是纯虚类)
CMyDialog里声明一个该虚类的对象指针
然后CMyDialog提供一个setter,赋值到该指针
[解决办法]
组合 优于 继承
[解决办法]
class Action : public Interface
{
}

CMyDialog:public CDialog
{
Interface *pAction;
}

读书人网 >C++

热点推荐