1. 程式人生 > 其它 >專案之黑馬旅遊網(七)----------------具體路線顯示

專案之黑馬旅遊網(七)----------------具體路線顯示

引用指對變數,函式等起一個別名,和指標有些區別。
建立引用時,需要對引用對應一個目標,引用初始化之後就與這個目標捆綁,即不能再重新賦值
引用與函式之間存在三種關係
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.
文章較水,只不過我想借此機會改一下自己的碼風~