Eğitm Sayısı :532
AnasayfaC# DersleriCsharp Dersleri – Metodlar Ref ve Out Arasındaki fark

Csharp Dersleri – Metodlar Ref ve Out Arasındaki fark

csharp
C# da iki veri türü vardır . Birisi referans tipli dediğimiz veri türü diğeri ise değer tipinde veri türüdür. Referans veri türleri değişkenin bellekteki adresinin üzerinden işlem yapar .Yani verinin aynısını bellekte tekrar kopyalamaz ama değer türlerin ise tam tersi kullandığımız string , char , int gibi veri türleri herhangi bir ifade içinde kullanılırsa kopyası oluşturulur.Metodlar uygulamalarımızda çok defa kullanacağımız şeyleri tek seferde kullanmamıza olanak sağlar. Şuana kadar bir çok hazır metot kullandık Console Sınıfından WriteLine Metodu gibi Math sınıfından Round Metodu gibi bir çok metot kullandık. Daha kalıcı bir örnek verecek olursak. Diyelim ki bir marketiniz var ve günlük ne kadar hasılat yaptığınızı hesaplamanız gerekiyor. O zaman bir metot yazarak bir seferliğine daha sonra o metodu çağırdığınızda her gün o işlemin sonucunu elde edebilirsiniz.Metotlar sayesinde ayrıca işlemleri küçük parçalara ayırmış oluyoruz.

Ref Kullanımısi

Metotlara referans yoluyla değer atamak istediğimizde bunu “ref” anahtar sözcüğü ile yapıyoruz. tanımladığımız değişkenin adresleriyle birlikte geçirilir. Bunu yaparken Hem metot ‘da parametre kısmında hem de metodun çağırılmasında kullanmalıyız.

Out Kullanımı

Out anahtar deyimi ile de bu işlemi referans yoluyla yapabiliyoruz. Bu sefer değişkene ilk değer verme gibi zorunluluğumuz yok yukarıdaki ref örneğine dikkat ederseniz “sayi” değişkenin ilk değeri bulunmaktadır. Out’u bir metottan eğer birden fazla geri dönüş değeri istediğimizde kullanırız

Ref ve Out Arasındaki Fark

Out ile ref arasındaki temel fark out da ilk değeri verme zorunluluğumuzun olmamasıdır. Yukarıdaki örneklere bakıldığında biz out da verdiğimiz değeri metot içinde veriyoruz metodu çağırdığımız yerde main metodu içinde değil.

Paylaşmak Güzeldir :)
Csharp Dersleri –
Csharp Dersleri –

ademyalcin27@gmail.com

Oy
Henüz yorum yapılmadı . İlk sen neden yorum yapmayasın ?

Yorum yap

CAPTCHA (Şahıs Denetim Kodu) Resmi

*