1、两种典型类
Complex 无指针
String 有指针
编写思路差异较大
2、使用Class声明:Object Based。类与类之间的关系:Object Oriented
3、头文件的布局
#ifndef//防御式声明
#define
classA{...};
void A::func(){...}
#endif
4、inline function
关键字inline,高效率,但编译器未必都能实现
5、constructor
可重载,注意使用初始化列表,能够在对象的初始化阶段操作,不带指针的类一般无需写析构函数。
使用参数默认值当心无参重载陷阱。
6、ctor放置private实现单例模式
7、const小结(参考C++primer):
8、参数传递方式
pass by value
passby by reference(参考7中const用法)
9、返回值传递
若返回值存储空间存在则应用reference(r1+=r2)
10、friend
破坏封装
相同class的各个object互为友元
11、操作符重载
c2+=c1;(对左操作数进行操作)return by reference
若为与其他类型进行相加,应用全局函数
12、temp object
return complex(x.real(),x.imag());生命周期为一行
13、<<overloading
返回值ostream&可实现连续输出