(一)按返回值分类

  1. 有返回值函数(Value-Returning Functions)

示例:根据分数返回等级

char getGrade(double score) {
    if (score >= 90) return 'A';
    else if (score >= 80) return 'B';
    else if (score >= 60) return 'D';
    else return 'F';
}
  1. 无返回值函数(Void Functions)

函数)。

示例:打印分数对应的等级

void printGrade(double score){
	char grade = getGrade(score);//调用有返回值函数
	cout << "等级:"<< grade << endl;
}

//调用:printGrade(85);//输出"等级:B"
	

(二)按参数传递方式分类

  1. 值传递(Pass-by-Value)

对复杂数据)。

示例:值传递的局限性(无法交换两个变量)

void swapByValue(int n1, int n2){
	int temp = n1;
	n1 = n2;// 进修改形参,实参不受影响
	n2 = temp;
}

//调用后num1、num2仍为1和2
int num1 = 1, num2 = 2;
swapByValue(num1, num2);

引用传递(Pass-by-Reference)