1.参数
C#的方法和C++中的函数在返回值,参数传递方面是一样的,唯一的区别是引用的传递。
也许你想起来上面所讲,C#中取消了&操作符,这意味着没有了引用传递了,其实不是没有,而是不用&,改成了ref,例:
class Class1
{
static void Main(string[] args)
{
int a=1,b=2;
Console.WriteLine ("{0} {1}",a,b);
change(ref a,ref b) ;
Console.WriteLine ("{0} {1}",a,b);
}
static void change(ref int a,ref int b)
{
int c;
c=a;
a=b;
b=c;
}
} |
输出结果:
在形参和实参中加上ref就完成了引用,这样对a,b的值进行了交换。
2.方法重载
C#的函数重载和C++一样没有区别。
3.结构函数
上面我用了方法,这里是函数,所以它首先不需要关键字static,这个函数是一个结构的函数,它在类的外部,所以不需要static。例:
struct mytext
{
public int num;
public int text()
{
return num;
}
}
class Class1
{
static void Main(string[] args)
{
mytext frist;
int a;
frist.num =5;
a=frist.text ();
Console.WriteLine ("{0}",a);
}
} |
输出结果: 5 |