一个MFC的小问 题 成员函数的问题

intCMainFrame::OnCreate(LPCREATESTRUCTlpCreateStruct){if(CFrameWnd::OnCreate(lpCreate... int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;

if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}

if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create status bar\n");
return -1; // fail to create
}

// TODO: Delete these three lines if you don't want the toolbar to
// be dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);

return 0;
}
请问是不是系统调用OnCreate 这个成员函数 就会执行下边 定义好的语句 下边return 0;的值是不是返回给 上边的INT了
展开
 我来答
lxa520
2012-05-29 · TA获得超过236个赞
知道小有建树答主
回答量:231
采纳率:0%
帮助的人:184万
展开全部
语句有三种 顺序 条件 循环

语句都是顺序执行下来的,
return 0; 因为函数有返回值 所以需要return
更多追问追答
追问
我想问的是LPCREATESTRUCT lpCreateStruct 是的实参 跟下边的语句有关吗
追答
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
第一句不是有用到这个参数 有关系
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shb8845369
2012-05-29 · TA获得超过280个赞
知道小有建树答主
回答量:138
采纳率:0%
帮助的人:167万
展开全部
lpCreateStruct这个参数是个结构体指针,onCreate的执行,是当你调用Create的时候,会产生WM_Create消息,进而调用On_Create函数创建窗口。这个参数由Create传递。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
DefInt
2012-06-06 · TA获得超过406个赞
知道小有建树答主
回答量:268
采纳率:83%
帮助的人:209万
展开全部
CMainFrm的基类是CFrameWnd,所以实际调用的是基类CFrameWnd中的OnCreate成员函数,而不是调用目前的派生类CMainFrm的OnCreate.
更多追问追答
追问
请问int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 下边的代码 是OnCreate的实现部分 或定义部分吗?我是菜鸟 实现部分和定义部分是一个意思吗?
追答
下面是OnCreate的实现部分,所谓实现部分就是实际执行的代码,而定义部分就像是:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct);
而不寄予实现。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式