c++ const关键字

介绍

const在c++中用来修饰内置类型变量,自定义对象,成员函数,返回值,函数参数。修饰的对象不可改变

用法

  • 修饰普通类型的变量: const int a = 1;a不可进行赋值操作。
  • 修饰指针变量,根据修饰的部分又可分成三种:
    – 修饰指针指向的内容:const int* p = &a;那么p指向的a不可改变
    – 修饰指针:int* const p = &a;那么p指向的地址不可改变,但是地址内的值可以改变
    – 修饰指针和指向的内容:const int* const p = &a;指向的地址和地址内的的值都不可改变
  • 修饰函数参数:
    – 函数值传递时,形参不可变。但此处可用可不用,应该函数会自动产生临时变量赋值形参值 void Cpf(const int a)
    – 修饰指针时,防止指针被修改。 void Cpf(int *const a)
    – 修饰自定义类型的参数传递,使用const+引用可以避免临时对象构建时调用构造函数。 void Cmf(const Test& _tt)
  • 修饰返回值:
    – 修饰内置类型的返回值,const int Cmf()
    – 修饰自定义类型的返回值,返回值不可作为左值使用
    – 修饰返回的指针或者引用
  • 修饰类成员函数:
    – 目的是防止成员函数修改被调用对象的值 int get_cm()const注意const不能和static共同使用,因为static修饰成员函数时,静态成员函数不含this指针,即不能实例化,但是const成员函数必须具体到某一实例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值