C# ile Operatörleri Aşırı Yüklemek

.NET çatısı altında operatörleri aşırı yüklemek mümkündür. +, -, *, / gibi operatörleri özel sınıflarınız için aşırı yükleyebilirsiniz.

.NET çatısı altında operatörleri aşırı yüklemek mümkündür. +, -, *, / gibi operatörleri özel sınıflarınız için aşırı yükleyebilirsiniz.

Aşırı yüklemek .NET çatısı altında bir HATA DEÐİLDİR. Bir fonksiyonu aynı projede iki kez kullanabilirsiniz (dönüş tipleri aynı, parametreleri farklı olmak şartıyla).

Bu dersimizde bir sınıfı +, -, *, / gibi operatörlerle aşırı yüklemeyi öğreneceğiz.


public class KUP

{

public int a, b, c;

public KUP(int sa, int sb, int sc)

{

a = sa;

b = sb;

c = sc;

}




public static KUP operator +(KUP x, KUP y)

{

KUP yeni = new KUP();

yeni.a = x.a + y.a;

yeni.b = x.b + y.b;

yeni.c = x.c + y.c;

return yeni;

}

}



Bu sınıfı tanımladığımızda herhangi bir fonksiyonda


KUP k = new KUP(10, 10, 30);

KUP m = new KUP(20, 20, 50);



KUP yeni_kup = k + m; // Operatörü Kullandık



yeni_kup için; a = 30 , b = 30, c = 80 oldu.

NOT: Operatörler tanımlandıkları sınıf için kullanılabilirler. Örneğin int ve int türünden iki değişken için KUP sınıfının operatörünü kullanmak mümkün değildir.

Operatörleri orjinal kullanımlarını yansıtacak şekilde aşırı yüklemek programcı için daima daha anlaşılırdır. Örneğin + operatörünü bölme işlemi için de kullanabilirsiniz fakat bu pek kullanışlı bir tanımlama olmayacaktır.
  • Etiketler;
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Ellerine saglık çok güzel yazmışsın devamını bekleriz
Çok işime yaradı teşekkürler :)

Yukarı Git