C++问题:
2。建议你学习一下面向对象,UML,设计模式等等。
3。要解决这个问题,你可以像C一样思考,但是在那个基础上,把它打包成类。
4。你说的都在C++标准库中,就是STL。可以搜STL的书。
5。这个。。。我不知道你想要什么,你想要什么。我现在在写指针,先把这个贴上吧。
模板& lt类型名_DLG,类型名_数据& gt
结构页面
{
typedef TPage & lt类型名_DLG,类型名_数据& gt_ ThisType
_ DLG * _ p;
int _ nRef
t页面()
{
_ p = NULL
_ nRef = 0;
}
~ t页面()
{
如果(_p)
{
_ p-& gt;destroy window();
delete _ p;
_ p = NULL
if(_nRef)
{
nRef-;
}
}
}
void Initial(_DATA数据类型,CWnd* pWnd)
{
CRect rect
pWnd-& gt;GetWindowRect(rect);
_ p =新DLG(pWnd);
_ p-& gt;SetData(数据类型);
_ p-& gt;Create(_DLG::IDD,pWnd);
CRect rectX
GetWindowRect(_ p-& gt;GetSafeHwnd()、rectX);
int nWidth=rectX。width();
int nHeight=rectX。height();
rectX.left=rect.left+(rect。Width()-rectX。width())/2;
rectx . right = rectx . left+nWidth;
rectX.top=rect.top+(rect。height()-n height)/2;
rectx . bottom = rect . top+n height;
_ p-& gt;move window(rectX);
_ p-& gt;ShowWindow(nRef?SW _ HIDE:SW _ SHOW);
nref++;
_ nRef = nRef
}
void Initial(_DATA数据类型,CRect rect,CWnd* pWnd)
{
_ p =新DLG(pWnd);
_ p-& gt;SetData(数据类型);
_ p-& gt;Create(_DLG::IDD,pWnd);
CRect rectX
GetWindowRect(_ p-& gt;GetSafeHwnd()、rectX);
int nWidth=rectX。width();
int nHeight=rectX。height();
rectX.left=rect.left+(rect。Width()-rectX。width())/2;
rectx . right = rectx . left+nWidth;
rectX.top=rect.top+(rect。height()-n height)/2;
rectx . bottom = rect . top+n height;
_ p-& gt;move window(rectX);
_ p-& gt;ShowWindow(nRef?SW _ HIDE:SW _ SHOW);
nref++;
}
_DLG *运算符-& gt;()
{
return _ p;
}
_ ThisType & ampoperator =(_ ThisType & amp;_t)
{
_ p = _ t. _ p
返回* this
}
void SaveData(int nWhich)
{
if(n which = = _ nRef-1 & amp;& amp哪一个!=-1)
{
_ p-& gt;SaveData();
}
}
};
我想做一个对话框的布局。我觉得太麻烦了,就写了这个东西,不是很有用,相当于智能指针。你会先看一看。