关于const声明一些东西
来源:互联网 发布:惊天破仔仔换头像软件 编辑:程序博客网 时间:2024/06/13 13:26
const int a;
int const a;
const int *a;
int *const a;
const int *const a;
前两个的作用是一样,a是一个常整型数。第三个意味着a是一个指向常整型数的指针(也就是,整型数是不可修改的,但指针可以)。第四个意思a是一个指向整型数的常指针(也就是说,指针指向的整型数是可以修改的,但指针是不可修改的)。最后一个意味着a是一个指向常整型数的常指针(也就是说,指针指向的整型数是不可修改的,同时指针也是不可修改的)。如果应试者能正确回答这些问题,那么他就给我留下了一个好印象。顺带提一句,也许你可能会问,即使不用关键字 const,也还是能很容易写出功能正确的程序,那么我为什么还要如此看重关键字const呢?我也如下的几下理由:
1). 关键字const的作用是为给读你代码的人传达非常有用的信息,实际上,声明一个参数为常量是为了告诉了用户这个参数的应用目的。如果你曾花很多时间清理其它人留下的垃圾,你就会很快学会感谢这点多余的信息。(当然,懂得用const的程序员很少会留下的垃圾让别人来清理的。)
2). 通过给优化器一些附加的信息,使用关键字const也许能产生更紧凑的代码。
3). 合理地使用关键字const可以使编译器很自然地保护那些不希望被改变的参数,防止其被无意的代码修改。简而言之,这样可以减少bug的出现。
上面是会遇到的几种变量的定义,你能说出哪几个是非法的吗?至少我第一次看的时候,还以为全对了,然而我错了,现把分析写在下面,还望大家指正!
参考:http://blog.sina.com.cn/s/blog_4762d6850100y1l1.html
- 关于const声明一些东西
- 声明指针需要注意的一些东西
- 关于player的一些东西
- 关于Rss的一些东西
- 关于招聘的一些东西
- 关于log4j的一些东西
- 关于memset的一些东西
- 关于电子邮件的一些东西
- 关于sscanf的一些东西
- 一些关于hibernate的东西
- 关于emacs的一些东西
- 关于javaScript的一些东西
- 关于wlan的一些东西
- 关于bsp的一些东西
- 关于补码的一些东西
- 关于友元类的一些东西
- 关于一些语法的东西
- 关于iBeacons的一些东西
- 响应式Web设计(HTML5和CSS3)工具集
- 百度影音只有图像没有声音怎么解决
- 让jquery弹出窗口不被阻挡
- Java笔记学习总结(二)
- LeetCode 题解(196) : Contains Duplicate II
- 关于const声明一些东西
- Android 软键盘隐藏显示
- 快速排序的几个实现及其在效率上的考虑
- Jrebel 6.2.1破解
- web.xml文件的作用
- 【more effective c++读书笔记】【第3章】异常(1)
- 在微信中添加自己的微信公众号名片以及发纯文字链接教程
- 关于MongoDb的简单入门
- LCA倍增法