Ekleme işleçleri - +
ve +=
+
ve +=
işleçleri, yerleşik integral ve kayan nokta sayısal türleri, dize türü ve temsilci türleri tarafından desteklenir.
Aritmetik +
işleci hakkında bilgi için, Aritmetik işleçler makalesinin Birli artı ve eksi işleçleri ve Toplama işleci + bölümlerine bakın.
Dize birleştirme
İşlenenlerden biri veya her ikisi dize türünde olduğunda, +
işleci, işlenenlerin dize gösterimlerini birleştirir (null
'ün dize gösterimi boş bir dizedir).
Console.WriteLine("Forgot" + "white space");
Console.WriteLine("Probably the oldest constant: " + Math.PI);
Console.WriteLine(null + "Nothing to add.");
// Output:
// Forgotwhite space
// Probably the oldest constant: 3.14159265358979
// Nothing to add.
Dize ilişkilendirme, dizeleri biçimlendirmek için daha kullanışlı bir yol sağlar:
Console.WriteLine($"Probably the oldest constant: {Math.PI:F2}");
// Output:
// Probably the oldest constant: 3.14
Yer tutucular için kullanılan tüm ifadeler de sabit dizeler olduğunda, sabit bir dize başlatmak için dize ilişkilendirmesini kullanabilirsiniz.
C# 11 ile başlayarak, +
işleci UTF-8 değişmez dizeleri için dize birleştirme gerçekleştirir. Bu işleç iki ReadOnlySpan<byte>
nesnesini birleştirir.
Temsilci birleşimi
Aynı temsilci türündeki işlenenler için, +
işleci çağrıldığında sol işleneni çağıran ve ardından sağ işleneni çağıran yeni bir temsilci örneği döndürür. İşlenenlerden herhangi biri null
ise, +
işleci başka bir işlenenin değerini döndürür (bu da null
olabilir). Aşağıdaki örnek, temsilcilerin +
işleciyle nasıl birleştirilebileceğini gösterir:
Action a = () => Console.Write("a");
Action b = () => Console.Write("b");
Action ab = a + b;
ab(); // output: ab
Temsilci kaldırma işlemi gerçekleştirmek için
Temsilci türleri hakkında daha fazla bilgi için bkz. Temsilciler.
Ek atama işleci +=
+=
işlecini kullanan bir ifade, örneğin
x += y
Şu değere eşdeğerdir:
x = x + y
x
yalnızca bir kez değerlendirilmiş olması dışında.
Aşağıdaki örnekte +=
işlecinin kullanımı gösterilmektedir:
int i = 5;
i += 9;
Console.WriteLine(i);
// Output: 14
string story = "Start. ";
story += "End.";
Console.WriteLine(story);
// Output: Start. End.
Action printer = () => Console.Write("a");
printer(); // output: a
Console.WriteLine();
printer += () => Console.Write("b");
printer(); // output: ab
ayrıca olayabone olduğunuzda bir olay işleyicisi yöntemi belirtmek için +=
işlecini kullanırsınız. Daha fazla bilgi için bkz. Nasıl yapılır:olaylara abone olma ve abonelikten çıkma.
İşleç aşırı yüklenebilirliği
Kullanıcı tanımlı bir tür, +
işleci aşırı yükleyebilir. İkili +
işleci aşırı yüklendiğinde, +=
işleci de örtük olarak aşırı yüklenir. Kullanıcı tanımlı bir tür, +=
işlecini açıkça aşırı yükleyemez.
C# dil belirtimi
Daha fazla bilgi için C# dil belirtimininUnary artı işleci ve Toplama işleci bölümlerine bakın.