今天刚刚看到C#最有意思的地方方法重载!
放两段代码大家共勉一下啊!~
using System;
using System.Collections.Generic;
using System.Text;

namespace operator_
{
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;
jingyan = 0;
neili_r = 50;
tili_r = 50;
}
public static Player operator ++ (Player p){
p.neili=p.neili+50;
p.tili=p.tili+100;
p.neili_r=p.neili;
p.tili_r=p.tili;
return p;
}

public void Show(){
Console.WriteLine("体力:{0}",neili);
Console.WriteLine("经验:{0}",jingyan);
Console.WriteLine("内力:{0}",neili);
Console.WriteLine("体力满:{0}",tili_r);
Console.WriteLine("内力满:{0}",neili_r);
}
}
class Test {
public static void Main(){
Player man=new Player();
man.Show();
man++;
Console.WriteLine("升级中....");
man.Show();
Console.ReadLine();
man++;
man.Show();
Console.ReadLine();
}
}
}
这个是一元重载的下面是二元重载的哦!
using System;
using System.Collections.Generic;
using System.Text;

namespace MAXFunction
{
class DKR {
public int x,y,z;
public DKR(int vx,int vy,int vz){
x = vx;
y = vy;
z = vz;
}
public static DKR operator+(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 Test {
public static void Main() {
DKR dkr1 = new DKR(3, 2, 1);
DKR dkr2 = new DKR(6,5,4);
DKR dkr3 = dkr1 + dkr2;
Console.WriteLine("The 3th Location is:{0},{1},{2} ",dkr3.x,dkr3.y,dkr3.z);
Console.ReadLine();
}
}

}
还可以吧!~RPG游戏的原型!
放两段代码大家共勉一下啊!~




















































































