C++面向对象高级编程(上) 第一周笔记 GeekBand
1.防卫式声明:
例:
#ifndef ___COMPLEX___
#define ___COMPLEX___
...
#endif
2.内联函数:inline
函数是否真正为内联式函数,最终取决于编译器编译方式。
3.构造函数:
例:
class complex{
public:
complex(double r=0,double i=0):re(r),im(i){}
...
}
对象初始化尽量采用初始化列表的方式。
4.构造函数重载:
5.单例模式
构造函数被放在private中,作为私有成员。
6.常量成员函数:
例:double real() const {return re;}
如下声明类对象的方式必须将成员函数声明成常量成员函数:
const complex c(1,2);
7.参数传递:值传递和传递引用
值传递:double real() const {return re;}
引用传递:complex& operator+=(const complex&);
local object的返回必须值返回,非local object可以返回引用
8.友元:friend可以像成员函数一样取得类的private成员,同类对象之间互为友元。
9.操作符重载:成员函数和非成员函数