栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

关于 Const 的使用

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

关于 Const 的使用

        在C语言中,const 修饰的变量依然被当做常量,在内存中依然有存储的空间,还可以通过指针间接修改内存空间的值

        在C++中,C++把const看做常量,编译器会使用常数直接替换对值的引用

 

 C++中的const机制类似C语言中的宏,都是替换,但是C++的const是在编译阶段替换,C语言的宏是在预编译阶段替换。


 const修饰指针的三种情况:

1、指向常量的指针:指针指向一个常量对象,目的是防止使用该指针来修改指向的值

const int *p;  // *p的值不能变,p可以变

int const *p;  // 同上

 2、常指针:将指针本身声明为常量,防止改变指针指向的位置

int *const p;  // p不能改变,*p可以改变

 3、指向常量的指针:常量指针指向一个常量对象

const int* const p;  //都不能改变


const 修饰函数参数的三种情况:

1、值传递的 const 修饰传递,由于函数自动为形参临时复制实参值,实参不会改变

 2、const 参数为指针时,可以防止指针被篡改

 3、自定义类型的参数传参:需要临时对象复制参数,对于临时对象的构造,需要调用构造函数,比较浪费时间,因此用 const 外加引用传递的方法。

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/311856.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号