尽可能使用const
1. 让编译器强制约束自己哪些是可以变动以及不可变动,在编译期间帮助编码人员发现错误。
T Value;
T *p0 = &Value; (指针指向地址可以改变,也可以通过p0修改Value的值)
T *const p1 = &Value; (指针指向地址不可改变,可以通过p1修改Value的值)
const T * p2 = &Value; (指针指向地址可改变,不可以通过p2修改Value的值)
const T *const p3 = &Value; (指针指向地址不可改变,不可以通过p2修改Value的值)
2. 函数const返回值(书中案例介绍也是为了表达const 能在编译期间排除错误问题)(A * B)= C类似的操作。
3.非const修饰的成员函数可以通过调用const修饰的成员函数,减少代码重复
个人感觉:工作中对const的使用仅仅是为了该变量不被修改,其他的用法用的相对较少(以后工作中碰到类似需要这养样使用的会多考虑下const使用的意图,累计一下经验)