C++中的const关键字和#define有些相似,#define只是用来做文本替换的,会出现一些错误并且不容易检查到。在C++代码中尽量使用const而不是#define

 

const的作用:

1、 const用于定义常量:const定义的常量编译器可以对其进行数据静态类型安全检查。

2、 const修饰形参:当参数是用户自定义类型或者抽象数据类型时,用const引用传递而不是值传递可以提高效率。

Void fun1(A a);

Void fun2(A const &a);

第二个函数不需要产生临时对象,省去了对象构造析构消耗的时间

3、 const修饰函数返回值:如果函数返回一个const指针,则函数返回值只能被const同类型指针接收,否则error

4、 const修饰成员函数:当你的成员函数不需要改变数据成员的值时,就加上const修饰。