在C#中,同一函数名进行多次命名,以传入不同类型,不同数量的参数,减少函数名数量,避免命名空间污染,如

static int CalcSum(int a,int b)
{
    return a+b;
}
static int CalcSum(int a,int b,int c)
{
    return a+b+c;
}
static float CalcSum(float a,float b)
{
    return a+b;
}
static float CalcSum(float a,int b)
{
    return a+b;
}
static float CalcSum(int a,float b)
{
    return a+b;
}
static float CalcSum(ref float a,int b)
{
    return a+b;
}
static int CalcSum(int a,int b,params int[] arr)
{
    return a+b;
}

在重载函数的语法规则中:

1.对参数的类型,数量以及顺序都可以进行重载,乃至于ref(out)关键字,变长参数也可以重载

2.对返回值类型没有固定

3.需要注意的是,在进行ref重载后,不能再进行out重载;

4.默认参数无法被视为一种重载。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐