我目前正在查看一个函数示例,我似乎无法弄清楚在Visual C ++中使用MFC。功能如下
CMFC_OSG_MDIView::CMFC_OSG_MDIView() :mOSG(0L)
{
}
我理解除了mOSG(0L)片段之外的所有内容。 mOSG在MFC_OSG _MDIView类中声明如下:
cOSG* mOSG;
答案 0 :(得分:4)
CMFC_OSG_MDIView::CMFC_OSG_MDIView() :mOSG(0L)
{
}
以上是一个名为CMFC_OSG_MDIView
的类的构造函数。 :mOSG(0L)
称为initializer list
,在创建对象时执行。 init-list在构造函数体之前被调用,而正确的位置用于初始化成员变量。
答案 1 :(得分:1)
这是一个初始化程序 - mOSG
初始化为0L。当控件进入构造函数体时,mOSG
已初始化。
有关为什么在构造函数中使用初始化器而不是赋值的讨论,请参阅this question。
答案 2 :(得分:1)
0L
指定值为零的长整数。因此,这会将类成员mOSG
初始化为0。