3

それらがどのように実装されているかを確認するために、+=インを見つけようとしています:reflector

a=+1a=a+1

しかし、私はそれを見つけることができません。

何か助けはありますか?

4

2 に答える 2

4

+=forおよびその他の組み込みの数値型を意味する場合int: 調べるライブラリ関数はありません。コンパイラは、それらを直接 IL 命令に変換できます。

DateTime構造体を試すことができDecimalます。

于 2012-04-19T07:58:34.677 に答える
4

演算子の実装はどこにもありません。これ+=は、コンパイラによって処理される疑似演算子です。C# コンパイラは に展開a += 1されa = a + 1ます。

次に、JIT コンパイラーは、最も効率的なコードを作成して、a = a + 1. 単純な変数の場合、値を増やすだけの命令になります。

于 2012-04-19T08:01:06.453 に答える