C# Constant (Sabitler) konusu ile ilgili makalemizi inceleyebilir veya SendeKodYaz YouTube kanalımızdaki konu ile ilgili videoyu izleyebilirsiniz.

C# Constant (Sabit) Nedir?

Bir değişken tanımlandığında, değişkenin türüne göre bellekte bir alan ayrılır. Değişkenin değeri tanımlandığı kod satırında belirlenebileceği gibi programın akışı esnasında sonradan da belirlenebilir. Aynı zamanda değişkene ilk defa verilen değer istenilen durumlarda defalarca değiştirilebilir. Bellekte saklanan değer sürekli güncellenir ve o değişkene aktarılan son değer bellekte ayrılan alanda saklı kalır. 

Örneğin; hava sıcaklığı ve nem değerinin sensör yardımıyla programa aktarıldığını ve program tarafından sıcaklık ve nem değişiminin grafiksel olarak gösterilmek istendiğini düşünelim. Bu durumda sıcaklık ve nem için tanımlanan değişkenlerin her değeri veri tabanında saklanacak, bellekte ise sürekli güncellenecektir.

C# Constant (Sabit) olarak tanımlanan bir değişkenin değeri ise sonradan değiştirilemez. Dolayısı ile bir değişkenin değerinin program boyunca sabit olarak tutulması istendiğinde const (sabit) ifadesinden yararlanılır. Örneğin; irrasyonel matematiksel sabit olan pi sayısının değeri 3.14 verisidir. Yer çekimi kuvveti ve ışık hızı gibi verilerin değerleri de değişmez. Benzer şekilde muhasebe programlarında ve maaş hesaplamalarında kullanılan kdv oranı gibi veriler için de sabit tanımlaması yapılabilir.

C# Constant Sabit Değişken Tanımlama 

C# programlama dilinde değişken tanımlaması aşağıdaki şekilde yapılmaktaydı.

Tür        İsim Atama

Operatörü 

Değer
sbyte sicaklik = -5
string tcno = “22554477881”

Tür isminin önüne constant (sabit) kelimesinin ilk beş karakterinden oluşan const anahtar kelimesi yazılarak sabit değişken tanımlaması gerçekleştirilir.

NOT: Sabit olarak tanımlanan değişkenlerin isimleri küçük harflerle yazılabilir. Lakin programlamın okunurluğunu kolaylaştırmak ve diğer değişkenlerden ayırt etmek için sabit değişkenlerin isimleri büyük harflerle yazılmaktadır. Çok önem arz etmeyen bu durumun bilinmesinde fayda vardır.

C# Constant Örnekleri

const double PI=3.14

const int ISIKHIZI=300000

Yukarıdaki örneklerde PI ve ISIKHIZI isimli değişkenlerin diğer değişkenlerden ayırt edilererek programın okunurluğunu kolaylaştırmak için büyük harflerle yazıldığı görülmektedir.

Programlamada Const Değişken Tanımlanın Avantajı

Tanımlanacak olan değişkenin değeri her ne kadar program içerisinde sonradan değiştirilmeyecek dahi olsa bu değişkeni sabit olarak tanımlamak zorunluluğumuz yoktur. Yani program içerisinde kullanılacak olan pi sayısı gibi değişkenleri normal bir değişken gibi tanımlayabiliriz. Ancak sabit yani const türünde değişken tanımlamanın önemli avantajları vardır.

Const türünde tanımlanan veri türleri bellekte daha az yer kaplar. Çünkü const türünde tanımlanan değişkenlerin değerleri sonradan değiştirilmeyeceği için bellek başlangıç değerine göre dizayn edilir. Bir başka deyişle değişkenin ilk atama yapılan değerine göre bellek boyutu dizayn edilir.

Uzun projeler üzerinde çalışma yaptığınızda program kodları uzadıkça uzar. Bu durum beraberinde sabit değer içeren bir değişken değerinin yanlışlıkla değiştirilmesi ihtimaline neden olabilir. İşte bu yüzden sabit değer içeren değişkenler const veri türünde tanımlanmalı ve bu tür olasi hataların önüne geçilmelidir.

C# Const Sabit Değişken Tanımlama Kuralları 

KURAL 1: Normal değişken tanımlamalarından farklı olarak const türünde tanımlanan değişkenin değeri tanımlandığı kod satırında atanmalıdır. Bir başka ifade ile ilk değeri belirlenmeyen değişkenler sabit türünde olma özelliğini taşımaz.

Örnek:

Tanımlama:

const double pi = 3.14;

Yanlış Tanımlama:

const double pi;

pi = 3.14;

C# Constant tanımlama kuralları 1
C# Constant Tanımlama Kuralları 1

CS0145: A const field requires a value to be provided: Bir sabit alanın sağlanması değer gerektirir.

CS0131: The left-hand side of an assignment must be a variable, property of inexer: Eşitliğin sol tarafı ifade değişken olmak zorundadır.

Yukarıdaki ekran görüntüsünde görüldüğü üzere 13 ve 14. kod satırlarında hata iletisi mevcuttur. 

KURAL 2: Const türünde tanımlama yapılarak ilk değeri belirlenen bir değişkenin değeri programın diğer aşamalarında değiştirilemez. Bu kural zaten sabit değişkenin en temel özelliğidir.

Örnek:

const double pi=3.14;

pi = 3.15;

C# Constant Tanımlama Kuralları 2
C# Constant Tanımlama Kuralları 2

CS0131: The left-hand side of an assignment must be a variable, property of inexer: Eşitliğin sol tarafı ifade değişken olmak zorundadır.

KURAL 3: Eğer const türünde tanımlanan bir değişkene değer aktarımı yapılırken, bir başka değişkenin değerinden faydalanılmak istenirse; yararlanılacak olan değişkenin de const veri türünde olması gerekmektedir. Aksi takdirde programın yürütülmesi esnasında hata mesajı ortaya çıkacaktır.

Örnek:

Doğru Tanımlama:

const double pi=3.14;

const double x=pi;

Yanlış Tanımlama:

double pi=3.14;

const double x=pi;

C# Constant Tanımlama Kuralları 3
C# Constant Tanımlama Kuralları 3

CS0133: The expression being assigned to ‘x’ must be constant: ‘X’ olarak atanan ifade sabit olmalı

KURAL 4: Sınıflar (class), yapılar (struct) ve diziler (array) dahil olmak üzere kullanıcı tarafından tanımlanmış olan türler const olamaz.

Örnek:

const int[] notlar = { 79, 92, 67 };

C# Constant Tanımlama Kuralları 4
C# Constant Tanımlama Kuralları 4

KURAL 5: Birden fazla değişken aynı türden ise tek bir satırda const olarak tanımlanabilir.

Örnek:

const int months = 12, weeks = 52, days = 365;

KURAL 6: Const özelliği taşıyan değişkene değer olarak matematiksel işlemlerin sonucu aktarılmak istendiğinde, üzerinde matematiksel işlem yapılan değişkenlerin tümünün de const özelliğinde tanımlı olması zorunludur. Aksi takdirde hata mesajı oluşacak ve program yürütülemeyecektir.

Aşağıdaki örnekte yıldaki gün sayısına göre hafta ve ay sayısının bulunmasına ilişkin örnek bir uygulama gösterilmektedir.

C# Sabit Değişken Tanımlama
C# Sabit Değişken Tanımlama
C# Constant Örnekleri 1

Aşağıdaki örnekte dairenin yarıçap uzunluğu klavyeden girilmekte ve pi matematiksel sabitinin değeri kullanılarak dairenin alanının hesaplanması sağlanmaktadır. pi sayısının değeri sabit olduğu için const türü kullanılmıştır. Değer 3.14 olarak ondalıklı olduğu için double değişken türünden faydalanılmıştır.

C# Const Örnekleri 1
C# Const Örnekleri 1

C# Constant Örnekleri 2

Aşağıdaki örnekte bir otomobilin Türkiye’ye giriş fiyatı klavyeden girilmektedir. Ardından KDV ve ÖTV oranları hesaplanarak toplam ödenecek tutar kullanıcıya yansıtılmaktadır.

C# Sabitler ve Kullanımı
C# Sabitler ve Kullanımı

C# Constant (Sabitler) ve Kullanımı konulu bu makalemizde; C# Const Nedir sorusuna yanıt aradık, aynı zamanda programlamada sabit değişken tanımlamanın avantajlarından bahsettik. Ayrıca konu ile ilgili gerçekleştirdiğimiz örnek uygulamalar ile konunun pekiştirilmesini sağlamaya çalıştık.

Visual Studio C# Console Dersleri kapsamındaki bir önceki makalemizde ise C# Değişkenler ve Veri Tipleri konusunu ele almıştık.

C# Değişkenler ve Veri Tipleri makalesi için tıklayınız.

YouTube üzerinden yayın yapan SendeKodYaz kanalımızda C# Console ve Form dersleri başta olmak üzere birçok Bililişim Teknolojileri ve Yazılım alanından eğitimler verilmektedir. Ayrıca yakın zamanda Arduino mikrodenetleyici ile robotik uygulamalar konulu eğitim serimiz başlayacaktır. YouTube kanalımızı takip etmek ve abone olmak için aşağıdaki görsele tıklayınız.

C# Dersleri YouTube
C# Dersleri YouTube

Leave a comment