c++引用
2022/4/14 14:12:31
本文主要是介绍c++引用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
引用指对变量,函数等起一个别名,和指针有些区别。
建立引用时,需要对引用对应一个目标,引用初始化之后就与这个目标捆绑,即不能再重新赋值
引用与函数之间存在三种关系
1.引用作为函数参数
可以做到传参的作用
eg.swap函数
void swap (int &x, int &y) { int temp; temp = x; x = y; y = temp; }
2.引用作为函数的返回值
函数的返回值如果声明为引用型,其调用也可以被赋值,函数调用也可以用作左值表达式。
eg.
int &max (int x, int y) { return (x > y ? x : y); } //可以用以下方法调用max函数 int z = max (a, b); max (a, b) = 20; // 将a,b中最大的值改为20 max (a, b) ++; // 将a,b中最大的值加一
3.通过引用返回多个值
#include <bits/stdc++.h> #define LL long long using namespace std; int score [4] [5] = { {60, 70, 80, 90, 78}, {75, 85, 88, 78, 83}, {89, 88, 79, 96, 90}, {76, 74, 69, 90, 87} }; int &level (int grade [], int unit, int &gA, int &gB) { int sum = 0; for (int i = 0; i < unit; i++) { sum = sum + grade [i]; } sum /= unit; if (sum >= 85) return gA; else return gB; } int main () { int genusA = 0, genusB = 0; int student = 4; int gradeunit = 5; for (int i = 0; i < student; i++) level (score [i], gradeunit, genusA, genusB) ++; cout << "A级人数为:" << genusA << endl; cout << "B级人数为:" << genusB << endl; return 0; }
运行结果为
A级人数为:1 B级人数为:3
ps.
文章较水,只不过我想借此机会改一下自己的码风~
这篇关于c++引用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-28pyqt 怎么打包整个项目-icode9专业技术文章分享
- 2024-09-28laravel Commands 创建带有参数的 Artisan 命令的步骤和示例-icode9专业技术文章分享
- 2024-09-28antd怎么实现渲染tiff图片-icode9专业技术文章分享
- 2024-09-28英文半角中划线和中文全角的中划线有什么区别-icode9专业技术文章分享
- 2024-09-28nvm npm 和node 他们之间有什么关系-icode9专业技术文章分享
- 2024-09-28Node Version Manager (nvm)使用教程-icode9专业技术文章分享
- 2024-09-28nvm命令太慢,是什么原因-icode9专业技术文章分享
- 2024-09-28Kotlin 如何增加、删除和修改 MutableStateFlow 中的值。-icode9专业技术文章分享
- 2024-09-28Kotlin的stateFlow.update 写法介绍-icode9专业技术文章分享
- 2024-09-28kotlin 怎么获取当前时间格式-icode9专业技术文章分享