新手请各位帮忙
1。语句
CPaintDC pdc(this);
为什么要加this呢,总觉得定义一个变量,语法中不需要它。2。在
CSplashWnd::CSplashWnd(UINT nBitmapID, UINT nDuration /*= 3500*/)
: m_nBitmapID(nBitmapID)
, m_nDuration(nDuration)
{}
中,": m_nBitmapID(nBitmapID)"和“, m_nDuration(nDuration)”的含义怎么理解?

解决方案 »

  1.   

    他调用了构造函数,加this是说明他需要的DC是自己本身的,如果换成NULL,你就会看见画出来的东西都是在桌面上的
      

  2.   

    1、CPaintDC pdc(this);是利用类中的带参构造函数。将pdc构造初始化时窗口指针指向本窗口,那么随后的操作都是在本窗口的HDC上进行的。
    2、": m_nBitmapID(nBitmapID)"和“, m_nDuration(nDuration)”的含义怎么理解?
    这是采用的初始化表对成员变量进行初始化。有时类需要成员在类构造前初始化,就采用这种方式。
    如类中的const型成员必须采用这种方式初始化。
      

  3.   

    1、CPaintDC pdc(this);是利用类中的带参构造函数。将pdc构造初始化时窗口指针指向本窗口,那么随后的操作都是在本窗口的HDC上进行的。
    2、": m_nBitmapID(nBitmapID)"和“, m_nDuration(nDuration)”的含义怎么理解?
    这是采用的初始化表对成员变量进行初始化。有时类需要成员在类构造前初始化,就采用这种方式。
    如类中的const型成员必须采用这种方式初始化。
      

  4.   

    1.那是定义一个类的对象
       pdc()是构造函数,this是一个参数,它表明pdc是一个CPaintDC类型的对象,而这个对象是根据this所指的已有对象而建立起来的.
    2.
       C++里面的提前初始化
      

  5.   

    1.DC是属于某个窗口的,this代表这个DC所属的窗口。
    2.这是C++中成员变量的另一种初始化方法。