const作用

作用:

1、为给读你代码的人传达非常有用的信息,声明一个参数为常量是为了明确这个参数的应用目的;

2、通过给优化器一些附加信息,使关键字const也许能产生更紧凑的代码;

3、合理使用关键字const可以使编译器很自然的保护那些不希望被修改的参数,防止无意的代码修改,可以减少bug的出现。

应用举例:

1、定义常量:

const int MAX_NUM = 100;    //定义之后,MAX_NUM的值不再可以被改变,与#define类似,但有区别

2、修饰指针

const int *p1;                //指向整型常量的指针,它指向的值不能被改变

int const *p2;                //指向整型的常量指针,它不能再指向别的变量,但它指向的变量可以被改变

const int const * p3;      //指向整型常量的常量指针,它既不能再指向别的变量,指向的变量也不能被改变

3、修饰函数形参

修饰形参,可防止在函数内部修改指针指向的数据,提高数据操作时的安全性

4、注意const和非const类型转换

当一个指针变量 str1 被 const 限制时,并且类似const char *str1这种形式,说明指针指向的数据不能被修改;如果将 str1 赋值给另外一个未被 const 修饰的指针变量 str2,就有可能发生危险。因为通过 str1 不能修改数据,而赋值后通过 str2 能够修改数据了,意义发生了转变,所以编译器不提倡这种行为,会给出错误或警告。

  1. 为给读你代码的人传达非常有用的信息,声明一个参数为常量是为了告诉用户这个参数的应用目 的;
  2. 通过给优化器一些附加信息,使关键字const也许能产生更紧凑的代码;
  3. 合理使用关键字const可以使编译器很自然的保护那些不希望被修改的参数,防止无意的代码修改,可以减少bug的出现;

猜你喜欢

转载自blog.csdn.net/leo062701/article/details/80618370
今日推荐