m_hWnd 和 this指针
来源:互联网 发布:mac上photoshop 编辑:程序博客网 时间:2024/05/16 15:07
m_hWnd
① m_hWnd这个成员变量,最早是定义在类CWnd中,而且是类CWnd的第一个数据成员,
先看一下MSDN的解析:
The handle of the Windows window attached to this CWnd. The m_hWnd data member is a
public variable of type HWND.
由此可知,它是窗口类的一个句柄,凡是从CWnd派生的类都有这个句柄,凡是以CWnd派
生的类定义的对象内部也都有这个句柄,它是类或者对象标识自己的句柄。
凡是窗口都有一个句柄用来标识自己,在CWnd类中将这个句柄作为一个成员变量直接封装
了,所以CWnd类的成员函数都没有句柄这个参数了,比如::ShowWindow(HWND hWnd),在
CWnd类或者派生类中,这个函数就没有参数了,CWnd::ShowWindow(),其实这个函数实
现很简单,就是调用了::ShowWindow(HWND hWnd),因为在类里已经封装好了,所以也不需
要在传递参数了。
② 哪如何获得窗口类的自己的句柄呢?有如下方法:
1、this->m_hWnd;
2、GetSafeHwnd();
3、AfxGetMainWnd()->m_hWnd;
this
象共用这个成员函数体,即调用同一个代码段
this指针,即作为一个隐含参数传递给成员函数;然后每次非静态成员函数存取非静态数据
成员时,由隐含使用this指针,即都会被转化为this->数据成员的方式。
。当程序被编译之后,此成员函数地址即已确
定。而成员函数之所以能把属于此类的各个对象的数据区别开, 就是靠this指针,也就是对
于每一个类的非静态成员函数,都有一个隐含的this指针,该指针指向调用该成员函数的实
例对象。
个隐含于每一个类的成员函数中的特殊指针。它指向正在被该成员函数操作的那个对象。
类的const成员函数中,this指针的类型为:const X* const, 这说明this指针所指向的这种对
象是不可修改的(即不能对这种对象的数据成员进行赋值操作);
1、在类的非静态成员函数中返回类对象本身的时候,直接使用
2、为避免对同一对象进行赋值操作,例如在重载运算符"="时,如:
ClassText& operator = (const ClassText& instance)
{
}
3、当形式参数与成员变量名相同时,如
this->n = n (不能写成n = n),否则无法实现对成员
变量的赋值操作;
名限定符即可,这也就是为什么静态函数无法访问非静态成员了(没有对象指针,如何访问
其成员变量?),静态成员函数自然能访问静态成员变量。因些说:静态成员变量实际上就
是一种有访问限制的全局变量而已。从类的外部访问静态成员变量,前面需要加上类名限定
符。
- m_hWnd和this指针
- m_hWnd和this指针
- m_hWnd 和 this指针
- m_hWnd和this指针
- m_hWnd 和 this指针
- m_hWnd和this指针
- this指针和m_hWnd的区别
- this指针和m_hWnd的区别
- this指针和m_hWnd的区别
- this指针和m_hWnd的区别
- m_hWnd与this指针
- This 和m_hwnd
- 对m_hWnd和this指针的一点小小理解
- MFC this指针,m_hInstance, m_hWnd
- MFC this指针,m_hInstance, m_hWnd
- m_hWnd 与 C++中的this指针
- this指针和 *this
- AfxGetApp(),this->GetSafeHwnd(),AfxGetMainWnd()->m_hWnd
- ios::sync_with_stdio(false);
- 定义图文并茂的html5新标签-figure、figcaption
- 第三章第8题
- YUY2(YUYV)转YUV420源码分析
- IOS适配前先看懂iPhone,4,5,6,6plus屏幕分辨率与像素的关系
- m_hWnd 和 this指针
- HDU 1598 find the most comfortable road
- mysql分区相关
- VS2012——WebFroms UnobstrusiveValidationMode 需要“juqry”ScriptResourceMapping.
- Structs2 HelloWorld-05 OGNL
- Java内存模型(二):主内存与工作内存的交互
- A+B Problem 高精度
- HDU 3078 — Network
- 统计起始日期之间有多少个2月29日