关闭

C++类的数据成员的初始化相关问题

546人阅读 评论(0) 收藏 举报
分类:

     可以使用构造函数进行过初始化数据成员,传参数是引用,或者不用传递参数直接进行初始化也可以:值得注意的是实参和形参的使用。

    也可以使用类中的成员函数进行初始化相关变量,不需要传递参数,直接定义临时变量,然后对临时变量进行的初始化,赋值给类的数据成员变量,完成对数据成员的初始化工作。

   

#pragma once
class CSetMineWnd
{
 public:
  CSetMineWnd(void);
  ~CSetMineWnd(void);
  int SetMineWindow();
 //private:
  CREATESTRUCT m_RectWindow;

};

 

 

int CSetMineWnd::SetMineWindow()
{
 int iRectCode = -1;
 //获得桌面的坐标,然后设置主窗口的位置
 RECT rect = {0};

 ::GetWindowRect(::GetDesktopWindow(),&rect);
 rect.left = rect.right - rect.left;
 rect.left /= 2;
 rect.top = rect.bottom - rect.top;
 rect.top /= 2;

 if( rect.left > 200)
 {
  rect.left -= 200;
 }
 if( rect.top > 150 )
 {
  rect.top -= 150;
 }

 rect.right = rect.left + 400;
 rect.bottom = rect.top + 300;

 CREATESTRUCT cs_TMain;

 cs_TMain.dwExStyle = 0;
 cs_TMain.lpszClass = NULL;
 cs_TMain.lpszName = NULL;
 cs_TMain.style = WS_OVERLAPPEDWINDOW;
#if 1
 cs_TMain.x = rect.left;
 cs_TMain.y = rect.top;
 cs_TMain.cx = 400;
 cs_TMain.cy = 300;
#endif
 cs_TMain.hwndParent = NULL;
 cs_TMain.hMenu = NULL;

 m_RectWindow = cs_TMain;//完成初始化工作

 return iRectCode;
}

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:979950次
    • 积分:17636
    • 等级:
    • 排名:第540名
    • 原创:741篇
    • 转载:522篇
    • 译文:0篇
    • 评论:105条
    最新评论