1、当带参数的构造函数所带的参数含有默认值,那么应该去掉不带参数的构造函数,因
为这样在声明一个对象时,程序会不知道你调用的是哪一个构造函数。
初始化参数列表:Cbox::Cbox(int x=2):xp(x)
2、如果我们将Get或者set方法放到类的定义中,则默认都是内联函数
3、在类定义内定义的类的友元函数默认也是内联函数。
4、友元函数不是类的成员,因此访问特性不适用于他们,这些函数只是拥有特殊权限的
普通全局函数。
5、友元函数可以访问类的私有变量。
6、最好是自己写复制构造函数。
8、被声明为const的对象其this指针也是const,因此编译器将不允许调用任何没有将传
递给它的this指针指定为const的成员函数。要指定const成员函数,我们只需在函数头后
面附加const关键字即可。注意,我们只能对类成员函数这么做,对普通全局函数不能这
么做。仅当某个函数是类成员时,将其声明为const才有意义,其作用是使该函数中的
this指针成为const,这意味我们不能在该函数的定义内在赋值语句左边写上类的数据成
员。const成员函数不能调用同类的非const成员函数,因为那样也有可能修改当前对象。
当我们将某个对象声明为const后,该对象可以调用的成员函数也都必须是const,否则程
序将不能编译。
9、静态的成员只有一个实例,要被同类的所有对象共享。类的静态成员可以在类定义外
部进行初始化,例如:int CBox::objectCount=0;
10、编译器会把静态的类的成员初始化为0.
11、复制构造函数使用const引用传递,CBox(const CBox& initB);