C++指针、引用、const
2024-09-28 19:41:25
int a = ;
int *p = &a; //定义指针p指向变量a
*p = ; //*p代表a的值 int b = ;
p = &b; //p指向变量b
*p = ; //此时*p代表b的值 int c[] = {,,};
p = c; //此时p是指向数组c的指针,具体指向数组的第一个元素,即(&c[0]/p/c)三种写法等价
int a = ;
int &b = a; //定义引用b为变量a的引用,即a的别名(可理解为a的“外号”)
b = ; //给b赋值6即给a赋值6,此时a的值变为6 引用经典用法:
void ValueExchange(int &a,int &b)
{
int temp = ;
temp = a;
a = b;
b = temp;
}
ValueExchange(a,b); //调用函数实现值交换,和c语言指针相比,c++的引用显然更加简便
const int a = ; //常量a = 3,const的含义即是被const修饰的值拒绝被修改 const int *p;
int const *p; //两种写法等价,此时无法用*p来改变p指向的变量的值,因为*p被const所修饰 int * const p; //此时p只能指向一个变量,之后不能指向其他变量,因为p被const修饰 const int &b;
int const &b; //两种写法等价,&b无法被修改,即b引用的变量无法被修改,常用于上面的值交换类型函数,保护传入的变量数据的安全,拒绝被函数内部修改
最新文章
- 【C#公共帮助类】 Log4net 帮助类
- 小小C程序(九九乘法表)
- opengl es中不同的绘制方式
- 学习微信小程序之css12设置盒子内容的宽高
- poj3502 恶心题
- Scala 中object和class的区别
- linux下一个有意思的问题(文件名以短划线或空格开头)
- NodeJS系列~目录
- 夺命雷公狗ThinkPHP项目之----企业网站11之栏目的删除完成
- struts2框架基本操作总结
- Java中移位操作运算符的理解
- dispatch_group_async可以实现监听一组任务是否完成,完成后得到通知执行其他的操作。这个方法很有用,比如你执行三个下载任务,当三个任务都下载完成后你才通知界面说完成的了
- leetcode-173:Binary Search Tree Iterator(Java)
- IBM Rational-完整的软件工程解决方案工具集
- 【NOIP2015 DAY1 T3 】斗地主(landlords)
- 给Object扩展新方法
- junit的安装和使用
- sqlQuery.list()方法返回类型
- ROS探索总结(十九)——如何配置机器人的导航功能
- Linux System Programming --Chapter Seven
热门文章
- C#获取单元格值(使用NPOI插件)
- Codeforces Round #520 (Div. 2) B math(素数因子的应用)
- 查询mysql单库的修改时间,大小
- Windows10下设置Shift+右键增加cmd
- ubuntu中误删/var/lib/dpkg/info的补救方法
- iOS WebDriverAgent 环境搭建
- java——io、字节流缓冲区拷贝文件、字节缓冲流
- Vue.js-----轻量高效的MVVM框架(四、指令)
- 转:zookeeper配置运行——较为详细的教程
- STL中的算法