ITPub博客

首页 > Linux操作系统 > Linux操作系统 > c#一元操作符重载

c#一元操作符重载

原创 Linux操作系统 作者:wisdomone1 时间:2012-03-09 17:28:46 0 删除 编辑
//实现
class Player
    {
        //测试操作符重载 在此为游戏角色升级
        public int tili;
        public int neili;
        public Player()
        {
            tili = 5;
            neili =25;
        }

        //如下操作符重载为,角色一升级就把内力和体力加对应的值,然后返回类对象
        //是一元操作符,只能作用于一个对象,即player类的一个对象
        //操作符重载语法格式:public static 类型 operator ++(类型 变量)
        //在C#中,下列操作符可以重载
        // + - . ! ~ -- ++ true false . / % ^ << >> != == < > <= >=

        //升级时 操作符 ++ 重载
        public static Player operator ++(Player p)
        {
            //方法参数是类对象,对类对象进行相关操作后,然后返回类对象
            p.tili = p.tili + 10;
            p.neili = p.neili + 30;
            return p;
        }

        //降级时 操作符 -- 重载
        //其实操作符重载定义就是多了一个operator 操作符 2部分
        public static Player operator --(Player p)
        {
            //方法参数是类对象,对类对象进行相关操作后,然后返回类对象
            p.tili = p.tili - 10;
            p.neili = p.neili - 30;
            return p;
        }

        //显示升级前后体力及内力值
        public  void Show()
        {
            Console.WriteLine("体力目前是:{0}",tili);
            Console.WriteLine("内力目前是:{0}", neili);
        }
    }



调用

class Program
    {
      
         //演示操作符重载,角色升级
        static void Main(string[] args)
        {
            Player p = new Player();
            p.Show();
            //升级
            p++;//操作符重载
            p.Show();

            //降级
            p--;
            p.Show();
            Console.ReadKey(); ;
          
        }

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9240380/viewspace-718198/,如需转载,请注明出处,否则将追究法律责任。

下一篇: c#二元操作符
请登录后发表评论 登录
全部评论
提供针对oracle初学者及进阶的数据库培训,欢迎大家咨询: 微信: wisdomone 微信公众号: lovedb qq: 305076427 微博: wisdomone9

注册时间:2008-04-04

  • 博文量
    2164
  • 访问量
    11693914