FreeFoxCM

函数重载的示例
 1
 2//函数重载的示例
 3#include<iostream>
 4using namespace std;
 5
 6int main()
 7{
 8    //函数原型,注意3个函数名称均为max
 9    int max(int num1,int num2);
10    float max(float num1,float num2);
11    int max(int num1,int num2,int num3);
12
13    //变量
14    int x=5,y=9,z=6;
15    float a=23.14,b=3.14;
16
17    //调用函数找出最大值
18    cout<<max(x,y)<<endl;
19    cout<<max(b,a)<<endl;
20    cout<<max(x,y,z)<<endl;
21    return 0;
22}

23
24int max(int num1,int num2)//解决两个int型数据的函数
25{
26    return (num1>num2)?num1:num2;
27}

28
29float max(float num1,float num2)//解决两个float型数据的函数
30{
31    return (num1>num2)? num1:num2;
32}

33
34int max(int num1,int num2,int num3)//解决3个int型数据的函数
35{
36    int Temp;
37
38    Temp=(num1>num2)? num1:num2;
39    return (Temp>num3)? Temp:num3;
40
41}
C++语序在同一作用域中使用同一函数名定义函数,这些函数的参数个数和参数类型不同,可以实现不同的功能。这就是函数重载,注意:参数的个数或类型至少得有一个不同,否则系统无法判断调用哪一个函数。

posted on 2008-06-17 15:16  FreeFox  阅读(553)  评论(0编辑  收藏  举报