C++ const 允许指定一个语义约束,编译器会强制实施这个约束,允许程序员告诉编译器某值是保持不变的。如果在编程中确实有某个值保持不变,就应该明确使用const,这样可以获得编译器的帮助。
直接贴代码示例
#include <iostream>
using namespace std;
const int*fun(const int a) const;//第一个const修饰返回类型,第二个const用来说明函数参数不可修改,第三个参数说明函数的隐藏对象本身不可修改
int main()
{
int a=3;
static int b=4;
extern int c;
const int *p1=&a;//指针所指向的变量,变量值不可通过p1修改
int const *p2=&b;//同上
int * const p3=&a;//指针p3只能指向a内存地址,不可再指向他处
*p1++;//执行通过
(*p2)++;//编译不通过
(*p3)++;//执行通过
*p3++;//编译不通过
// cout<<(*p1)<<endl;
// cout<<(*p2)<<endl;
// cout << "Hello World!" << endl;
return 0;
}