C# 重载运算符

2021-06-20 01:04

阅读:392

标签:threading   bsp   结合   void   自增   ace   console   private   read   

能重载的一元运算符:+、-、!、~、++、--、True、False

能重载的二元运算符: +、-、*、/、%、&、|!、^、>、==、!=、>、=、

不能重载的运算符:=、&&、||、[]、()等等

 

重载运算符不能做什么?

1.创造新的运算符;2.改变运算符语法;3.重定义运算符如何处理预定义类型;4.改变运算符的优先级和结合性

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Dog dog1 = new Dog("jack");
            dog1++;
            dog1.ShowAge();
        }
    }
    public class Dog
    {
        private string Name;
        private int age = 0;
        public Dog(string dname)
        {
            Name = dname;
        }
        public void ShowName()
        {
            Console.WriteLine("这是一条狗:{0}", Name);
        }
        public void ShowAge()
        {
            Console.WriteLine("宠物的年龄为" + age);
        }
        // 使用重载运算符
        public static Dog operator ++(Dog dog)
        {
            dog.age++;  // 年龄自增
            return dog;
        }
    }
}

 

C# 重载运算符

标签:threading   bsp   结合   void   自增   ace   console   private   read   

原文地址:https://www.cnblogs.com/namejr/p/10269539.html


评论


亲,登录后才可以留言!