static和const关键字

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ValDC_Morning/article/details/78047447

1、C++中的static关键字
作用域隐藏:一个工程有多个文件时,用static修饰的函数只在本文件内部可见,外部不可见。
static 修饰的变量是全局变量,存储在静态数据区(默认初始化为0),只分配一次内存,下次调用时仍维持上次的值。
在类中static修饰的变量属于整个类拥有,对类的所有对象只有一份拷贝。
模块内部static修饰的成员变量可以被本模块内部所有函数调用,而模块外部函数不能调用,(如果其他模块要用必须加上using namespace)
修饰函数,改变了函数的链接属性,只能被本模块内部的其他函数调用,模块外部函数不能调用。
在类中static函数属于整个类拥有,不接受this指针,因此只能访问类的static成员变量。

2、C++中的const关键字
定义常量,修饰函数参数和函数返回值;
修饰函数的定义体。定义类中某个函数为静态成员(不改变类中数据成员)
const作为函数参数;
修饰函数返回值;
修饰函数定义体;
const保护从const修饰对象不能被更改,作为常量来使用,只能读不能写,const修饰变量、引用、对象、成员函数、数组、指针等。
被const修饰的都受到了强制保护,防止意外变动,提高程序健壮性。

猜你喜欢

转载自blog.csdn.net/ValDC_Morning/article/details/78047447