VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 1383|回复: 19

[原创] const关键字用法之我见

[复制链接]
79_avatar_middle
在线会员 发表于 2016-2-6 11:00:01 | 显示全部楼层 |阅读模式
const关键字

(1)const与指针---星号(*)在const之前表示指针常量,星号在const之后表示表示指向常量的指针;

(2)const限定函数的参数---表示该参数在函数体内不可改变

void Fun(const int Var);
分析:上述写法限定参数在函数体中不可被改变。由值传递的特点可知,Var在
函数体中的改变不会影响到函数外部。所以,此限定与函数的使用者无关,仅与
函数的编写者有关。
结论:最好在函数的内部进行限定,对外部调用者屏蔽,以免引起困惑。如可改
写如下:
void Fun(int Var)
{
const int & VarAlias = Var;
VarAlias ....
.....
}

(3)const在函数前,限定函数的值型返回值

const int Fun1();
const MyClass Fun2();
分析:上述写法限定函数的返回值不可被更新,当函数返回内部的类型时(如
Fun1),已经是一个数值,当然不可被赋值更新,所以,此时const无意义, 最
好去掉,以免困惑。当函数返回自定义的类型时(如Fun2),这个类型仍然包
含可以被赋值的变量成员,所以,此时有意义。

(4)const在函数后面,限定类的成员函数,不会修改类中数据成员的值;

class ClassName {
public:
int Fun() const;
.....
}
注意:采用此种const 后置的形式是一种规定,亦为了不引起混淆。在此函数
的声明中和定义中均要使用const,因为const已经成为类型信息的一部分。
获得能力:可以操作常量对象。
失去能力:不能修改类的数据成员,不能在函数中调用其他不是const的函数。

评分

参与人数 3驿站币 +5 热心值 +5 收起 理由
88_avatar_small 寂寞江湖 + 2 + 2 赞一个!
28_avatar_small 天下 + 1 + 1
65_avatar_small 编程者 + 2 + 2 支持原创!

查看全部评分





上一篇:最近写的 <圈叉棋-联机版>
下一篇:C语言二级指针
85_avatar_middle
online_vip 发表于 2016-2-6 18:43:42 | 显示全部楼层
看看如何,感谢分享
08_avatar_middle
在线会员 发表于 2016-2-6 21:10:00 | 显示全部楼层
const关键字用法之我见
65_avatar_middle
donate_vip 发表于 2016-2-7 09:15:59 | 显示全部楼层
谢谢分享  春节快乐
22_avatar_middle
在线会员 发表于 2016-2-7 10:40:55 | 显示全部楼层
const关键字用法之我见const关键字用法之我见const关键字用法之我见
18_avatar_middle
在线会员 发表于 2016-2-8 00:40:12 | 显示全部楼层
来看下啊
55_avatar_middle
在线会员 发表于 2016-2-9 09:10:42 | 显示全部楼层

来看下啊
72_avatar_middle
在线会员 发表于 2016-2-10 23:11:10 | 显示全部楼层
看看什么情况
04_avatar_middle
在线会员 发表于 2016-2-11 09:36:32 | 显示全部楼层
正在找这个,谢谢分享!
18_avatar_middle
online_vip 发表于 2016-2-11 21:22:08 | 显示全部楼层
const关键字用法之我见
46_avatar_middle
在线会员 发表于 2016-2-14 08:15:09 | 显示全部楼层
谢谢分享....
01_avatar_middle
在线会员 发表于 2016-3-16 08:51:55 | 显示全部楼层
谢谢分享啊
28_avatar_middle
在线会员 发表于 2016-3-16 08:53:26 | 显示全部楼层
小媳妇啊
81_avatar_middle
online_vip 发表于 2017-8-31 21:03:52 | 显示全部楼层
支持看看了
77_avatar_middle
online_vip 发表于 2017-9-8 19:29:51 | 显示全部楼层
谢谢分享
99_avatar_middle
在线会员 发表于 2017-9-16 06:58:02 来自手机 | 显示全部楼层
学习学习。
75_avatar_middle
在线会员 发表于 2017-9-17 23:35:02 | 显示全部楼层
看看如何,感谢分享
75_avatar_middle
在线会员 发表于 2018-1-21 09:17:52 | 显示全部楼层
深V好的深V很多事
51_avatar_middle
online_vip 发表于 2018-1-25 10:22:26 | 显示全部楼层
学习一下。
51_avatar_middle
online_vip 发表于 2018-1-25 10:25:01 | 显示全部楼层
讲解的简洁易懂,非常好。感谢分享。
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-4-19 09:22

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表