方法中的参数,值参数、引用参数(ref)、输出参数(out)、数组参数(params)
1、值参数,调用时会做一份拷贝,并且将此拷贝值做一份,次种方式可以保证实际参数是安全的;
2、引用参数,不开辟新的类存区域,当用引用参数传递参数时候把参数的实际类存传给函数;
3、输出参数,与引用参数相同,不同的是输出参数在传送的时候不用初始化;
4、数组型参数,如果形参中包含了数组形参数,那么它必须位于参数表中的最后,数组值允许以为数组;
静态成员和方法,static 修饰,方法公有;
方法的重载,参数和返回值得不同;
操作符重载
EG一元操作符:
using System;
class Player
{
public int neili;
public int tili;
public int jingyan;
public int neili_r;
public int tili_r;
public Player()
{
neili=10;
tili=50;
jingyuan=0;
neili_r=50;
tili_r=50;
}
public static Player operator ++(Player p)
{
p.neili=p.neili+50;
p.tili+=100;
p.neili_r=p.neili;
p.tili_r=p.tili;
return p;
}
public void Show()
{
WriteLine......
}
}
calss Test
{
public static void Main()
{
Player man=new Player();
man.Show();
man++;
main.show();
}
}
EG二元操作符重载
using System;
class DKR
{
public int x,y,z;
public DKR(int vx,int vy,int vz)
{
x=vx;
y=vy;
z=vz;
}
public static DKR operation +(DKR d1 ,DKR d2)
{
DKR dkr=new DKR(0,0,0);
dkr.x=d1.x+d2.x;
dkr.y=d1.y+d2.y;
dkr.z=d1.z+d2.z;
return dkr;
}
}
class Text
{
public static void Main(){
DKR d1 =new DKR(3,2,1);
DKR d2 =new DKR(0,6,5);
DKR d3 =d1+d2;
Console.WriteLine(...);
}
}