C/C++ const 修饰符的作用

       const 本作常量解释,const作为限定修饰符,将原来的变量限定不可更改。因此变量必须被初始化,未初始化的const变量,编译器会报错,同时在编译的过程中,将其放在内存中的只读区域,也可称作“只读变量”,不允许被修改。以此增加程序的健壮性。

const 变量

        一旦变量被const约束,其值视为不可更改,但依然是变量。如果我们在程序中试图修改 const 变量的值,在编译的时候,编译器将给出错误提示

在C语言中,enum类型和#define宏定义都可以用来定义常量。

    const在前后位置,意义一样
        const int a;          表示a是个整型常量    
        char* const a;        表示a是const, *a可变 
	const char *a;        表示*a是const, a可变   
	const (char *) a;     表示a是const, *a可变    
	const char* const a;  表示a和*a都是const  

const变量作为函数参数 

        表示该变量是一个 const 变量。在该函数的作用域下,不能够改变该参数的值。 指向 const 变量的指针,允许使用 ”指向 const 变量的指针“ 或 普通指针 作为参数。

const 成员函数

    const成员函数指的是,此函数不应该修改任何成员变量, 也不能调用类中任何非const成员函数。一般写在函数的最后来修饰。

const修饰类对象/对象指针/对象引用

用const修饰的类对象表示该对象为常量对象,该对象内的任何成员变量都不能被修改。对于对象指针和对象引用也是一样。

扫描二维码关注公众号,回复: 11497489 查看本文章

mutable关键字

  在C++中,mutable是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态.

猜你喜欢

转载自blog.csdn.net/enjoybocai/article/details/107407761
今日推荐