Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我试图找到+=inreflector以了解它们是如何实现的:
+=
reflector
a=+1对比a=a+1
a=+1
a=a+1
但我找不到它。
有什么帮助吗?
如果您指的是+=forint和其他内置数字类型:将不会有库函数可供查看。编译器可以将它们直接翻译成 IL 指令。
int
你可以试试这个DateTime结构,也许Decimal也可以。
DateTime
Decimal
该运算符在任何地方都没有实现+=,它是一个由编译器处理的伪运算符。C# 编译器扩展a += 1为a = a + 1.
a += 1
a = a + 1
然后,JIT 编译器创建最有效的代码来执行a = a + 1. 如果它是一个简单的变量,它将只是一个增加值的指令。