void fun(int a) 和void fun(ref int a)是重载吗?解决办法

void fun(int a) 和void fun(ref int a)是重载吗?void fun(int a) 和void fun(ref int a)是重载吗?我试了

void fun(int a) 和void fun(ref int a)是重载吗?
void fun(int a) 和void fun(ref int a)是重载吗?
我试了一下,是重载。但是我不太理解。谁能给我解释一下吗?

[解决办法]
重载就是函数函数名相同,函数参数的个数或类型不同,且可以有不同的返回值。
就你的这个函数,肯定是参数的类型不一致。
首先给你介绍下ref:
ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。若要使用 ref 参数,则方法定义和调用方法都必须显式使用 ref 关键字。
第一个参数的类型是int型,是值类型,第二个参数的类型是引用类型,参数类型不同,所以当然是重载了啦!
[解决办法]
解释一句话吧:
根据函数重载的定义:void fun(int a) 和void fun(ref int a)里的,
第一是值类型;第二个是引用类型。因为其两个函数的类型不同,所以可以
重载!