Kısa bir soru;
var x = 10;
x += x- -;
x değeri ne olur?
Sorunun doğru cevabı için;
Cevap 19 değil. Doğru cevap 20 olmalı.
Neden 20 olduğunu ben de tam olarak bilmiyorum, ama IL koduna baktığımızda aşağıdaki sonucu görüyoruz;
ldc.i4.s 10 ; [10] stloc.0 ; [] ldloc.0 ; [10] ldloc.0 ; [10, 10] dup ; [10, 10, 10] ldc.i4.1 ; [10, 10, 10, 1] sub ; [10, 10, 9] stloc.0 ; [10, 10] add ; [20] stloc.0 ; []
x değişkeni işlem sonucunda 20 değerine sahip gözüküyor. Yorumlarınızı bekliyorum.
Senior Software Engineer, @Microsoft
Ada ve Ege'nin babası ;)
Makale Adedi: 484