12、C 运算符重载与结构体使用

C# 运算符重载与结构体使用

1. 运算符重载概述

在 C# 中,设计目标之一是让用户定义的类能够具备内置类型的所有功能。以分数类型为例,要确保该类具有内置类型的功能,就需要能对分数实例进行算术运算(如加法、乘法等),还能在分数类型和内置类型(如整数)之间进行转换。

若不使用运算符重载,实现分数加法可能会写成:

Fraction theSum = firstFraction.Add(secondFraction);

但这种方式不够直观,更好的写法是:

Fraction theSum = firstFraction + secondFraction;

这种写法与内置类型(如 int )的使用方式一致,更加直观。

2. 使用 operator 关键字

在 C# 中,通过创建静态方法来实现运算符,其返回值代表运算结果,参数为操作数。当为类创建运算符时,就称之为“重载”该运算符,类似于重载成员方法。例如,重载加法运算符 + 可以这样写:

public static Fraction operator+(Fraction lhs, Fraction rhs)

这里约定将参数命名为 lhs (左手

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值