c++ 中const关键字(ok)

const关键字是一个承诺,他承诺一些东西是不变的

const首先作用于左边的东西;如果左边没东西,就做用于右边的东西

1、指定一个常数

在这里插入图片描述
则这个整形的a变量变成一个常量
有一些数字在程序中你不希望被改变,可以使用const关键字

2、常量指针、指针常量

常量指针:
在这里插入图片描述
int不可以变(地址的内容不可以变)
int*可以变(地址可以变)

这里用int const *p=&a 也是一样的

指针常量:
在这里插入图片描述
int可以变(地址的内容可以变)
int*不可以变(地址不可以变)

指向常量的常量指针:
在这里插入图片描述

3、常量引用

详细解释

常量引用主要来修饰形参,防止误操作。
在函数形成参列表中,可以加const修饰形参,防止形参改变实参。

4、类中使用const

1、在一个类中,任何不会修改数据成员的函数都应该声明为const类型
2、 const 对象可以调用 const 成员函数,而不能调用非const修饰的函数。
3、const 成员函数可以访问非const对象的非const数据成员、const数据成员,也可以访问const对象内的所有数据成员;
4、非const 成员函数可以访问非const对象的非const数据成员、const数据成员,但不可以访问const对象的任意数据成员;
5、如果只有const成员函数,非const对象是可以调用const成员函数的。
当const版本和非const版本的成员函数同时出现时,非const对象调用非const成员函数。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

拓展

如果常量函数想对一些变量进行修改可以在变量上面加mutable:允许函数是常量方法,但是可以修改变量

VC 源代码 ------------------------------------------------------------------------------- dswRename_src.zip   一个可以重命名workspace的程序。 simplecomserver_src.zip   演示了如何生成一个COM组件。 consolePipe_src.zip consolePipe_demo.zip   用图形界面的程序装载控制台程序并接收控制台程序的输出。 TiffToPDF_src.zip sampleimage.zip   将tiff转换成PDF的源程序。 SimpleWordPad.zip   简单字处理程序。 Gamma_Manager_src.zip Gamma_Manager_demo.zip   调节灰度的滑动条的类。 smpplib.zip   一个SMPP类库可以用来连接SMPP网关来发送和接收SMS消息。 ColorFont_src.zip   使用CColorDialog类轻松改变对话框背景颜色和字体。 benBro107.zip benbro.zip   一个基于IE的浏览器,使用了多文档界面的标签,IE界面和XP的工具条等。 PictureZoom_src.zip PictureZoom_demo.zip    一个C++ OCX控件可以在你应用程序的窗口上绘制图片。 CatListBox_src.zip CatListBox_demo.zip   这个程序模仿Outlook建立分类列表框。 CClockST_src.zip CClockST_demo.zip  一个简单的数字时钟程序,其的date类派生于MFC CStatic 基类。 CIVStringSet_Demo.zip CIVStringSet_Source.zip   基于MFC和STL平台的字符串类,可以实现在快速字符串搜索。 enum_display_modes_demo.zip enum_display_modes_src.zip   列出所有的显示模式并列表出来,通过单击列表来改变显示分辨率。 iconbutton_demo.zip iconbutton_src.zip   创建一个按钮,并在上面显示图标。 jpeglib_demo.zip jpeglib_src.zip   利用Delphi的代码在VC显示JPG图片,不使用动态连接库。 Mail_Report.zip   一个邮件报告程序。 SrcFirstProg.zip   解释了最基本的MFC程序流程。 tabcontrol_demo.zip tabcontrol_src.zip   自定义的标签控件对话框。 Undo_demo.zip undo_src.zip    在VC实现Undo和Redo功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值