闪电龟龟--笔记

万物寻其根,通其堵,便能解其困。
随笔 - 170, 文章 - 0, 评论 - 1, 阅读 - 79542
  博客园  :: 新随笔  :: 管理

C# 重载运算符

Posted on   闪电龟龟  阅读(1983)  评论(0编辑  收藏  举报

能重载的一元运算符:+、-、!、~、++、--、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;
        }
    }
}
复制代码

 

编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示