码迷,mamicode.com
首页 > 编程语言 > 详细

MFC中GetParent()的作用(转)

时间:2018-04-19 11:58:53      阅读:322      评论:0      收藏:0      [点我收藏+]

标签:get   资源   调用   函数调用   lan   http   dial   csdn   idc   

原文转自 https://bbs.csdn.net/topics/390540690

 

1、假如创建一个非模态的窗口,在如下两种做法里任选一种。
(1) chatting.m_lpDlg = new CChatDialog;
chatting.m_lpDlg->Create(IDC_DIALOG_CHAT,this); 
chatting.m_lpDlg->ShowWindow(SW_SHOW); 

(2) chatting.m_lpDlg = new CChatDialog(this); 
chatting.m_lpDlg->ShowWindow(SW_SHOW); 

因为通常带参构造函数通常会创建窗口。
你创建两个窗口,你只能使用一个,搞不好会有资源泄漏。
除非你的单参数构造函数,什么也不做。
否则
chatting.m_lpDlg = new CChatDialog(this); 
chatting.m_lpDlg->Create(IDC_DIALOG_CHAT,this); 
的代码相当于
chatting.m_lpDlg = new CChatDialog(); 
chatting.m_lpDlg->Create(IDC_DIALOG_CHAT,this); 
chatting.m_lpDlg->Create(IDC_DIALOG_CHAT,this); 
Create函数调用两次,自然以第二次调用为准,不过,资源泄漏,没法解决。

2、在CChatDialog里面GetParent()获得的就是创建时传进去的this

MFC中GetParent()的作用(转)

标签:get   资源   调用   函数调用   lan   http   dial   csdn   idc   

原文地址:https://www.cnblogs.com/happykoukou/p/8880778.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!