c++中const用法

1、const修饰指针

1.1 const修饰指针 --常量指针

特点:指针的指向可以修改,指针指向的值不可以修改;

int a = 10;
int b = 10;
int* p = &a;

修改:

const int* p = &a;   //常量指针
*p = 20;  //错误:指针指向的值不可以修改;
p = &b;   //正确:指针的指向可以修改,b的值也是10;

1.2 const修饰常量 --指针常量

特点:指针的指向不可以修改,指针的值可以修改;

int a = 10;
int b = 10;
int* p = &a;

修改:

int* const p = &a;   //指针常量
*p = 20;  //正确:指针指向的值可以修改;
p = &b;   //错误:指针的指向不可以修改;

1.3 const既修饰指针又修饰常量

特点:指针的指向和指针指向的值都不可以修改;

int a = 10;
int b = 10;
int* p = &a;

修改:

const int* const p = &a;
*p = 20;  //错误:指针指向的值不可以修改;
p = &b;   //错误:指针的指向不可以修改;

2、const在结构体中的使用

作用:防止误操作;

posted @   XiaoMu-1230  阅读(78)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示