每日一题(24)—— const


关键字const是什么含意?








只读变量;

const int a;
int const a;
const int *a;
int * const a;
int const * a const; 

    前两个的作用是一样,a是一个常整型数。第三个意味着a是一个指向常整型数的指针(也就是,整型数是不可修改的,但指针可以)。第四个意思a是一个指向整型数的常指针(也就是说,指针指向的整型数是可以修改的,但指针是不可修改的)。最后一个意味着a是一个指向常整型数的常指针(也就是说,指针指向的整型数是不可修改的,同时指针也是不可修改的)。如果应试者能正确回答这些问题,那么他就给我留下了一个好印象。顺带提一句,也许你可能会问,即使不用关键字 const,也还是能很容易写出功能正确的程序,那么我为什么还要如此看重关键字const呢?我也如下的几下理由:
1). 关键字const的作用是为给读你代码的人传达非常有用的信息,实际上,声明一个参数为常量是为了告诉了用户这个参数的应用目的。如果你曾花很多时间清理其它人留下的垃圾,你就会很快学会感谢这点多余的信息。(当然,懂得用const的程序员很少会留下的垃圾让别人来清理的。)
2). 通过给优化器一些附加的信息,使用关键字const也许能产生更紧凑的代码。
3). 合理地使用关键字const可以使编译器很自然地保护那些不希望被改变的参数,防止其被无意的代码修改。简而言之,这样可以减少bug的出现。







本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/465918.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

原来,我有这样期望

我妈小时候一直跟我们讲他们村里的一个人,我妈说他们家特有钱,他们家的粮仓里装满了花生和大米,而让他们变得这么富有的原因是—勤劳和省。我还上小学那几年,水稻的产量很低「袁隆平的杂交水稻是在后来几年才普及的」,…

详解SMS下OSD2008

百忙有闲来和大家分享一下接着上篇的SMS的一个应用—OSD,长话短说,开始吧!老规矩,先看看拓扑图在来构思下要做的步骤,一 、SMS-OSD前的装备工作 二 、安装OSD组件 三 、创建捕获光盘 四 、捕获模板系统镜像 五 、创建、…

python学习笔记(二十)初识面向对象

面向对象的编程的主要思想是把构成问题的各个事物分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述一个事物在解决问题的过程中经历的步骤和行为。对象作为程序的基本单位,将程序和数据封装其中,以提高程序的重用…

一文读懂 | 进程怎么绑定 CPU

昨天在群里有朋友问:把进程绑定到某个 CPU 上运行是怎么实现的。首先,我们先来了解下将进程与 CPU 进行绑定的好处。进程绑定 CPU 的好处:在多核 CPU 结构中,每个核心有各自的L1、L2缓存,而L3缓存是共用的。如果一个进…

每日一题(25)—— 自加++

C语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么? int a 5, b 7, c; c ab; 不管你相不相信,上面的例子是完全合乎语法的。问题是编译器如何处理它?水平不高的编译作者实际上会争论这个问题,根…

Spark天堂之门解密

本课主题 什么是 Spark 的天堂之门Spark 天堂之门到底在那里Spark 天堂之门源码鉴赏引言 Spark 天堂之门就是SparkContext,这篇文章会从 SparkContext 创建3大核心对象 TaskSchedulerImpl、DAGScheduler 和 SchedulerBackend 开始到注册给 Master 这个过程中的源码鉴…

C语言,使用union了解内存

今天一个读者朋友给我发的一段代码,这段代码让他有了疑惑。代码如下:#include "stdio.h" int main() {typedef union{short i;char j[2];}DATA;DATA a;a.j[0] 10;a.j[1] 1;printf("%x\n",a.i);return 0; }他的几个测试代码以及输出…

我做技术的这十年,我不做技术的这一年~

我和明哥认识是因为之前他在群里跟我们分享一件事情,当时因为明哥相信网上认识的一个朋友,说是要一起开发一个项目,结果他被骗了几万块钱。然后聊着聊着,我觉得明哥太实诚了,后面继续接触,知道他做的一些决…

每日一题(26)—— 无限循环的几种形式

嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环呢? 1、while(1) { } —— 个人推荐使用 2、for(;;) { } —— 这个实现方式让我为难,因为这个语法没有确切表达到底怎么回事。 3、goto Loop: ... goto Loop; —— 应试者如给…

Oracle Golden Gate概要

Oracle GoldenGate简介 Oracle Golden Gate用于源数据库与目标数据库的数据复制备份;可以在异构的环境(各种操作系统和数据库)之间实现数据亚秒级的实时复制备份;以及可以在实时数据仓库、数据同步、集中/分发、容灾、数 据库升级和迁移等多个场景下应用…

android 音频加载hal so调试

1. 整个加载流程图 2. 加载hal so的代码位置 2.1 在audiopolicymanager中的加载位置 diff --git a/frameworks/av/services/audiopolicy/managerdefault/AudioPolicyManager.cpp b/frameworks/av/services/audiopolicy/managerdefault/AudioPolicyManager.cpp index 632290a9…

【修炼5】《基础篇》别把项目成功当目标

副标题——做对的事情&#xff0c;远比你把事情做对&#xff0c;来的重要&#xff01;&#xff08;作者&#xff1a; 孙继滨&#xff09;<?xml:namespace prefix o />【项目经理之修炼】 全文索引给大家提一个问题&#xff1a;***************************************…

每日一题(27)—— define定义一个宏表明1年中有多少秒

用预处理指令#define 声明一个常数&#xff0c;用以表明1年中有多少秒&#xff08;忽略闰年问题&#xff09; 分析&#xff1a; 1、#define 语法的基本知识&#xff08;例如&#xff1a;不能以分号结束&#xff0c;括号的使用&#xff0c;等等&#xff09; 2、懂得预处理器将…

String,StringBuffer与StringBuilder的区别??

String,StringBuffer与StringBuilder的区别?? String 字符串常量StringBuffer 字符串变量&#xff08;线程安全&#xff09;StringBuilder 字符串变量&#xff08;非线程安全&#xff09; 简要的说&#xff0c; String 类型和 StringBuffer 类型的主要性能区别其实在于 Strin…

鸿蒙的路还很长

这是昨晚看到我的老领导发的和鸿蒙有关的文章&#xff0c;我在下面评论了&#xff0c;作为科技自媒体屌丝本屌&#xff0c;我昨晚也是看了鸿蒙2.0的发布会&#xff0c;也有一些观点。鸿蒙OS是什么&#xff1f;鸿蒙os是一个操作系统&#xff0c;而且是面向智能终端的&#xff0c…

有关Accordion组件的研究——Silverlight学习笔记[27]

Accordion组件在开发中常用于信息的分类显示。本文将为大家介绍该组件的特性以及通过一个实例讲述该组件的基本运用。组件所在命名控件&#xff1a;System.Windows.Controls组件常用方法&#xff1a;SelectAll&#xff1a;选择所有位于Accordion组件中的Accordion项。&#xff…

螺旋格式输出数据

螺旋格式输出数据 问题&#xff1a;(问答题) 编程输出以下格式的数据。 When i0 1 When i1 7 8 96 1 25 4 3 When i2 21 22 23 24 2520 7 8 9 1019 6 1 2 1118 5 4 3 1217 16 15 14 13 1、Python&#xff1a; def format_…

每日一题(28)—— 引用与指针的区别

引用与指针有什么区别&#xff1f; &#xff08;1&#xff09;引用必须被初始化&#xff0c;指针不必&#xff1b; &#xff08;2&#xff09;引用初始化以后不能被改变&#xff0c;指针可以&#xff1b; &#xff08;3&#xff09;不存在指向空值的引用&#xff0c;但是存在…

聊聊 top 命令中的 CPU 使用率

之前写过cpu占用率的文章CPU占用率是什么&#xff1f;平常我们使用 top 命令来查看系统的性能情况&#xff0c;在 top 命令中可以看到很多不同类型的 CPU 使用率&#xff0c;如下图红框中标出部分&#xff1a;下面&#xff0c;我们来介绍一下这些 CPU 使用率的意义&#xff1a;…