[C++] 引用类型&
2023-09-27 14:26:23 时间
引用的方法:
类型 &引用名 = 变量名;
例如:
int a = 5; int &b = a;
引用的规则:
1、引用被创建的同时必须被初始化
2、无null引用,引用必须与合法的存储单元关联
3、一旦引用被初始化,就不能改变引用的关系
4、引用只能引用变量,不能引用常量和表达式
举例:
#include <iostream> using namespace std; // 使用普通类型交换,失败 void swap1(int a, int b) { int tmp; tmp = a; a = b; b = tmp; } // 使用引用类型交换,和指针功能一样,成功 void swap2(int &a, int &b) { int tmp; tmp = a; a = b; b = tmp; } int main(void) { int a = 35; // b是a的引用类型,b是a的别名,本质是同一个变量 int &b = a; // a和b的值一样 cout << "a = " << a << ", b = " << b << endl; // a和b的地址相同 cout << "&a = " << &a << ", &b = " << &b << endl; // 设置a的值,b也随之改变 a = 100; cout << "a = " << a << ", b = " << b << endl; // 设置b的值,a也随之改变 b = 55; cout << "a = " << a << ", b = " << b << endl; int c = 500; cout << "a = " << a << ", c = " << c << endl; // 交换失败 swap1(a, c); cout << "a = " << a << ", c = " << c << endl; // 交换成功 swap2(a, c); cout << "a = " << a << ", c = " << c << endl; return 0; }
执行结果:
相关文章
- C++基础语法(二)-C++对C的扩展:【命名空间】【引用(reference):引用就是起别名 (引用:int &b = a)(取地址:int b = &a)】、【函数重载(overload)】
- ONNX:C++通过onnxruntime使用.onnx模型进行前向计算【下载的onnxruntime是编译好的库文件,可直接使用】
- C++&&Mysql&&codeblocks
- 高校学生学籍系统C++&mysql
- Linux 中C/C++ search path(头文件搜索路径)
- C++——static & const
- [C/C++]函数指针和函数分发表
- 【编程实践】第一章 C++入门 《C++程序设计语言》 / By 禅与计算机程序设计艺术&ChatGPT
- LeetCode刷题(11)【简单】回文数&罗马数字转整数(C++)
- LeetCode刷题(19)【简单】二叉树的前&&中&&后遍历(非递归)(C++)
- (vector&C++)(四、遍历与访问)
- (vector&C++)(二、插入)push_back与insert
- (string&C++)(五、截取)substr的使用
- (string&C++)(三、查找)find的使用
- 《C++ Primer 第5版》-14.2输入和输出运算符-康奈尔笔记
- C++并发编成 03 线程同步
- 【并发编程五】c++进程通信——共享内存(shared memmory)
- Zeroc Ice 3.6.1 生成 vs2015 c++ 版本库及相关配置
- Eclipse代码提示功能设置(Java & Eclipse+CDT C/C++)
- C++著名类库和C++标准库介绍
- Linux Eclipse代码提示功能设置(Java & C/C++)
- 2019-11-29-如何入门-C++-AMP-教程
- 【C++11 回调函数】回调入门(一)
- 六款常用的linux C/C++ IDE