C++中引用和const关键字怎么用
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,今天小编给大家分享一下C++中引用和const关键字怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我
千家信息网最后更新 2026年10月31日C++中引用和const关键字怎么用
今天小编给大家分享一下C++中引用和const关键字怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
引用
下面的写法定义了一个引用,并将其初始化为引用某个变量。
类型名 & 引用名 = 某变量名;
int n = 4;int & r = n; // r 引用了n,r的类型是 int &
某个变量的引用,等价于这个变量,相当于该变量的一个别名。
int n = 7;int & r = n; // r 引用了n,r和n就是一回事r = 4;cout << r; // 输出4cout << n; // 输出4n = 5;cout << 4; // 输出5
定义引用时一定要将其初始化成引用某个变量。
初始化之后,它就一直引用该变量,不会再引用别的变量了。
引用只能引用变量,不能引用常量和表达式。
double a = 4, b = 5;double & r1 = a; // r1引用了adouble & r2 = r1; // r2也引用了ar2 = 10; // a修改为10cout << a << endl; // 输出10r1 = b; // 用b的值对r1进行赋值,并非r1改为引用b,因为引用是"从一而终"的cout << a << endl; // 输出5
常引用
定义引用时,前面加const关键字,即为"常引用"。
int n;const int & r = n; // r的类型是const int &
不能通过常引用去修改其引用的内容:
并不是说引用的内容不能被修改
int n = 100;const int & r = n;r = 200; // 编译错误n = 300; // ok
常引用和非常引用的转换
const T &和T &是不同的类型。
T &类型的引用或T类型的变量可以用来初始化const T &类型的引用。
const T类型的常变量和const T &类型的引用则不能用来初始化T &类型的引用,除非进行强制类型转换。
const关键字用法
1)定义常量
const int MAX_VAL = 23;const double PI = 3.14;const string NAME = "Tommy";
2)定义常量指针
不能通过常量指针修改其指向的内容,但内容本身可以被修改,且常量指针的指向可以变化。
int n, m;const int *p = &n;*p = 5; // 编译错误n = 4; // okp = &m; // ok,常量指针的指向可以变化
不能把常量指针赋值给非常量指针,反过来可以。
const int *p1;int *p2;p1 = p2; // okp2 = p1; // errorp2 = (int*)p1; // ok,强制类型转换
[注] 因为常量指针对其所指向的内容没有修改权限,自然也不能赋予别的指针这样的权限。否则,非常量指针接收常量指针的赋值之后,便可以修改所指向的内容了,这存在一定安全隐患。
函数参数为常量指针时,可避免函数内部不小心改变参数指针所指地方的内容。
void MyPrintf(const char *p){ strcpy(p, "this"); // 编译出错 printf("%s", p); // ok}3)定义常引用
不能通过常引用修改其引用的变量
int n;const int & r = n;r = 5; // errorn = 4; // ok
以上就是"C++中引用和const关键字怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
变量
类型
指针
常量
内容
指向
输出
关键
关键字
知识
篇文章
编译
C++
不同
函数
参数
就是
权限
错误
面的
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
小米移动互联网科技园
科技平台互联网
互联网科技深圳
智网互联网科技
期待互联网科技
互联网科技视频
云电互联网科技
兼蜜互联网科技
苏州大垚互联网科技
上海亿帐通互联网科技
互联网科技公司招聘
恒银科技与互联网金融
互联网和黑科技的看法
昭通互联网科技选哪家
南博望互联网科技有限公司
互联网金融科技名词解释
21世纪互联网科技成就
互联网科技数字货币
上海万顺科技互联网有限公司招聘
科技和互联网行业的特点
咖啡网
互联网科技名片
互联网金融 科技金融
迪茉互联网科技
重庆威客帮互联网科技
互联网大会黑科技排名
内蒙古九一互联网科技
张召忠谈中国互联网科技
福建互联网展示科技馆设计
现代互联网科技公司