C# 重載運算符


能重載的一元運算符:+、-、!、~、++、--、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;
        }
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM