C++ 中 const 和 static 的作用
时间:2022-03-21 06:17
目录
const 的主要应用如下:
const 关键字使用的注意点:
C++中static关键字有三个明显的作用:
const的主要应用如下:
-
const 用于定义常量:const定义的常量编译器可以对其进行数据静态类型的安全检查。
-
const 修饰函数形式参数:当输入参数为用户自定义类型和抽象数据类型的时候,将“值传递”改为“const 引用传递” 可以提高效率。
-
const 修饰函数的返回值:如果给“指针传递”的函数返回值加const,则返回值不能直接修改,且返回值只能被赋值给const 修饰的同类型指针。
const char * GetChar(void) {}; char *ch =GetChar();//error const char *ch=GetChar();//correct
-
const 修饰类的成员函数(函数定义体):任何不需要修改数据成员的函数应该使用const修饰,这样即使不小心修改了数据成员或调用了非const成员函数,编译器也会报错。
int GetCount(void) const;
const 关键字使用的注意点:
- const int 声明/定义一个类型的变量时,一定要初始化,并且该初始化的变量不能作为赋值操作符的左值。
- const int * 这时候 const用来修饰指针指向的变量,即指针指向是常量。即不能通过该指针给指向的变量赋值,能修改该指针的指向。
- int * const 这时候const 用来修饰指向变量的指针,即指向变量的指针本身是常量。可以通过该指针修改指针指向的变量,不能修改该指针的指向。
- const int * const 这时候前一个const 用来修饰的指针指向的是一个常量后一个const用来修饰指针本身是常量,不能通过指针修改变,也不能通过变量名(这时候应该叫做常量了)修改值。
例子:
输出:
The Num is 2 The Num is 5 The Num is 3
C++ 中 const 和 static 的作用,gxlsystem