Feb
19

C++类中初始化成员列表

一、C++类中初始化成员列表的顺序

C++类成员变量可以在构造函数中通过成员列表的方式进行初始化,但实现初始化的顺序并不是按照其敲入的顺序进行的,而是按其在类中的声明顺序进行的。例如:

class CMyClass
{
public:
  CMyClass();

private:
  int m_nParam1;
  int m_nParam2;
  int m_nParam3;
};

CMyClass::CMyClass()
: m_nParam3(0), m_nParam2(0), m_nParam1(0)
{
}

上述代码中构造函数初始化成员列表的顺序是:m_nParam1(0), m_nParam2(0), m_nParam3(0)。
<p>二.理解:<br />code1:</p>请看以下帖子:   
  ---------------------------------------------------...
0 Comments
Feb
16

c++中冒号(:或::)及->的用法

是C++里的,是“域操作符”。比如声明了一个类A,类A里声明了一个成员函数void f(),但没有在类的声明里给出f的定义,那么在类外定义f时,就要写成void A::f(),表示这个f()函数是类A的成员函数。::一般还有一种用法,就是直接用在全局函数前,表示是全局函数。比如在VC里,你可以在调用API函数里,在API函数名前加::

一个冒号(:)表示继承关系 即 [子类]:[父类]

两个冒号(::)表示是引用成员函数 即 [类]::[成员函数]

->为指针引用其成员用的. 即[对象指针名]->[指针所指对象的成员]

另一文:(特别关于.与->)

首先介绍一下C++中的结构。对于一个结构来说,
struct MyStruct {
int memb...

0 Comments