1.想一下这个问题,现在在MFC的类中定义了一个成员数组,要初始化,怎么办? 比如: 本来想:int a[5]={1,2,3,4,5}; 但是定义在类中,是不能像上面这样初始化的,只能一个一个的初始化。还真是不好办。 你有好方法吗? 不过,如果是静态成员,就很好办了。如在类中的定义: static const CRect m_rcSquares[9]; //9个矩形。 初始化的语句可以写在源文件中: const CRect COXgameDlg::m_rcSquares[9]={ CRect(16,16,112,112), CRect(128,16,224,112), CRect(240,16,336,112), CRect(16,128,112,224), CRect(128,128,224,224), CRect(240,128,336,224), CRect(16,240,112,336), CRect(128,240,224,336), CRect(240,240,336,336) }; 这样是可以的。 2.还有一种情况也比较常见。就是定义了一个类对象为成员变量。现在想初始化。一时竟然不知道如何下手。 比如: Student s; 这是在另一个类中定义了s,学生类的对象。还没有调用它的构造函数初始化。到底怎样才能调用它本身的构造函数初始化呢?问了高手,后来才知道是自己的c++语法不过关。像这种情况在源文件中初始化的方法如下: s=Student(name,sex,age,major,school);//姓名,性别,年龄,专业,学校 所以我希望大家在学习MFC的过程中要不断回头看c++语法,所以流传很多人是为了学习MFC才学C++的。当然这也是很多编程高手的箴言,值得借鉴!

评论