c# - 在 C# 中重载复合赋值运算符的简单方法?

标签 c# operator-overloading overloading

有没有人有一个非常简单的例子来说明如何在 C# 中重载复合赋值运算符?

最佳答案

您不能显式重载复合赋值运算符。但是,您可以重载主要运算符,编译器会对其进行扩展。

x += 1x = x + 1 的纯粹语法糖,后者是它将被翻译成的内容。如果您重载 + 运算符,它将被调用。

MSDN Operator Overloading Tutorial

public static Complex operator +(Complex c1, Complex c2) 
{
   return new Complex(c1.real + c2.real, c1.imaginary + c2.imaginary);
}

关于c# - 在 C# 中重载复合赋值运算符的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2869245/

相关文章:

c++ - 调用另一个函数重载

c++ - C++中运算符重载的语法是什么?

c# - 返回值的编译方法调用如何?

c# - 单元测试时无法读取应用程序设置

c# - 从 XmlNode 中提取 'text' 值的最佳方法?

c# - asp.net 文本 onkeyup 事件

c++ - 重载 < 运算符的正确方法?

c++ - 匿名命名空间中类的 ADL

c++ - 覆盖常量表达式?

c++ - 是否可以通过运算符重载按索引分配用户定义的数组? - C++