C++:常类型(const)


前言

程序中各种形式的数据共享,在不同程度上破坏了数据的安全性。常类型的引入,既能保证数据的共享又能防止数据被改动,常类型是用类型修饰符const说明的类型,常类型的变量或对象成员的值在程序运行期间是不能改变的。


一、常引用

说明引用时用const修饰,则被说明的引用为常引用。如果引用为形参,则不会对实参产生不希望的更改。引用作形参,能够避免对实参的更改,保证了数据的安全。
格式为:const 类型 &引用名

int a = 5;
const int &b=a;

如果出现
b=12;
则是错误的

二、常对象

说明对象时用const修饰,则被说明的引用为常对象。常对象的数据成员值在对象的整个生存期内不能改变,常对象不能调用普通成员函数
格式为:const 类名 对象名[(参数表)] 或者 类名 const 对象名[(参数表)]

三、常对象成员

1.常数据成员

常数据成员,构造函数只能通过成员初始化列表对该数据成员进行初始化,其它任何函数都不能对该成员赋值。代码如下:

#include <iostream>
using namespaace std;
class Date{
public:
Date(int y,int m,int d);
private:
const int year;
const int month;
const int day;
};
Date::Date(int y,int m,int d):year(y),month(m),day(d)
{ }//初始化列表
int main()
{ Date date1(1996.12.8);
  return 0;
}

2.常成员函数

格式为:类型说明符 函数名(参数表)const;
声明和定义的时候要有const,调用的时候不用加。const可用于区分重载函数。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值