C# const ve readonly farkları
 
C# dilinde yazdığımız kodda sabit bir değişken kullanmak istiyorsak const ve readolny ile tanımlayabiliriz. İkisinin pek tabi ki bir farkı vardır.
 
Const:
- Class seviyesinde veya herhangi bir metodda, herhangi bir yerde tanımlanabilir.
- Tanımlanma anında değeri verilmek zorundadır.
- Bir kere değer verildikten sonra tekrar değer verilemez.

Readonly:
- Yalnızca class seviyesinde tanımlanır.
- Tanımlandığı anda veya kurucu fonksyionda değeri verilebilir. Readonly de değer verirken böyle bir genişlik vardır.
 
 
Görüldiği gibi ikisinin birbirine göre artı ve eksileri vardır.

Aşağıda bir readonly değişken ve kurucu fonksiyonda yeni değer verme örnek kodu yazılmıştır.

public class HomeController : Controller
{
	readonly int c=4;
	public HomeController()
	{
            c = 5;
	}
}
c' nin değeri 5’tir. Görüldüğü gibi ilk tanımlandığı anda değer atandıktan sonra kurucu fonksiyonda yeniden değer atayabiliyoruz. Ama kurucu fonksiyon dışında başka bir yerde, değer atayamayız.
 
Aşağıda const a ise sadece tanımlandığı yerde değer atayabiliriz. Başka yerde atayamayız. Visual Studio da tekrar atamaya çalıştığımızda kodu derlemeden çalışma anında hata vererek kırmızı şekilde altını çizmektedir.
 
Bu iki sabit tanım arasındaki fark bu şekildedir. Bazı iş görüşmelerinde veya microsoft c# sınavlarında karşınıza çıkabilir, bilmekte fayda vardır.
 

 

Author: Engin ATALAY
Date: 04.09.2016 12:40:12
View Count: 985
 
 

COMMENTS
 
No comments yet. Be the first to comment who you are.
 
 
 
 
 
 
 
WRITE COMMENT
 
 
Your Name :
 
 
 
E-mail :
 
 
 
Your Message :
 
 
 
 
 
 
 
This project : ASP.NET MVC , RAZOR, Entity Framework , CSS , HTML , JQUERY(2.0.2) , AJAX the C# side-tier architecture was developed with logic.
 
Yukarı Çık