İlginizi Çekebilir
  1. Ana Sayfa
  2. C Sharp

C# Const Kavramı

C# Const Kavramı
+ - 2

C# Const Kavramı dersimiz ile C Sharp eğitimlerimize devam ediyoruz. C sharp const kavramı ‘nın anlamı readonly yani sadece okunabilir değildir. Const ile ReadOnly anahtar kelimelerinin birbirlerinden farkları vardır. Readonly’i nesne yaklaşımı ile tanımlayabilirken Const’ta bunu yapamayız. Const Türkçe’ye sabit olarak çevrilebilir. Const olarak tanımladığımız bir değişken program içerisinde hiçbir şekilde değiştirilemezler. Pi sayısı yada bunun gibi sabit değerleri tanımlamak için birebirdir. Ayrıca performans açısından da kullanılması gereken bir kavramdır. Çünkü const ile tanımlanmış değerler bellekte çok daha az yer kaplar.

C# dersleri

C sharp const kavramı

  1. Class seviyesinde yani en dışta tanımlanırlar.
  2. Const olarak tanımlanan değişkenler proje içerisinde yada runtime’da hiçbir şekilde değiştirilemezler.
  3. Const değişkenlerine tanımlandıkları satırda değer atanmalıdır.
  4. Kodların okunmasını ve değişkenin kullanım amacını belli ederler.
  5. Const değişkenlerinin değerlerini sadece bir başka const değişkeni değiştirebilir.
  6. Const olarak tanımlanan değişkenlere değer atanırken sadece const olarak tanımlanmış değişkenler ile hesaplama yapılarak değer atanabilir.
  7. Const olarak tanımlanan değişkenlere static bildirimi yapamazsınız.
  8. Bir void yada metodu const olarak tanımlayamayız.
  9. DateTime türü const olarak tanımlanamaz.
  10. Application.StartupPath const olarak tanımlamaz.

C Sharp Const Kavramını açıkladıktan sonra bir iki örnek ile konuyu pekiştirelim.

        public const string ProjeFirma = AssemblyInfo.AssemblyCompany;
        public const string ProjeAdi = "mustafabukulmez.com";

        public const int GunSaati = 24;
        public const int GunDakika = GunSaati * 60;
        public const int GunSAniye = GunDakika * 60;
        public const int IsikHizi_km = 1079252850; // km/saat
        public const int IsikHizi_mt = 299792458;  // mt/saniye

        public const double Pi = 3.14159265359;

Yukarıda gördüğünüz gibi önceki Global Değişkenler dersimde belirttiğim gibi const değişkenlerimizi de public anahtar kelimesi ile global hale getirdik.

Şimdi bir örnek proje ile konuyu biraz daha pekiştirelim.

Senaryomuz şöyle olsun. Yarı çapını yazdığımız bir dairenin alanını ve çevresini hesaplayan bir program yazalım.

Kodlarımız.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;

namespace mustafabukulmez_com
{
    public partial class deneme : DevExpress.XtraEditors.XtraForm
    {
        public deneme()
        {
            InitializeComponent();
        }

        public const double Pi = 3.14159265359;
        private void btn_Hesapla_Click(object sender, EventArgs e)
        {
            int yaricap = 0;
            try
            {
                yaricap = int.Parse(txt_yc.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Sadece sayi yazınız.");
            }

            double alan = yaricap * yaricap * Pi;
            txt_alan.Text = alan.ToString();

            double cevre = 2 * Pi * yaricap;
            txt_cevre.Text = cevre.ToString();
        }


    }
}

Ekran görüntüsü şöyledir.

c# const

 

Kodları incelediğimizde, textbox’tan aldığımız değeri try catch içerisine almış olduğumuz görünüyor. Ancak dikkat edilmesi gereken nokta catch kısmıdır. Burada sadece FormatExeption hatası olduğunda Sadece Sayı Giriniz hatası verecektir. Başka bir hata çıkarsa program kırılacaktır. Bu şekilde kullanıcı istediğimiz alana sayı girmez ise istediğimiz mesajı görecektir.

Try Catch Finally hakkında ayrıntılı yazım için tıklayınız.

C Sharp Eğitim Seti ve ERP Programlama ders listesi için tıklayınız. 

C sharp const kavramı dersimizde bu kadar dostlar. Diğer derslerimizde görüşmek üzere.

Sağlıcakla ve takipte kalın. ;)

Bu yazıya tepkiniz ne oldu?

Yazar Hakkında

Lise Ağ Sistemleri ve Yönetimi bölümü, üniversite Bilgisayar Programcılığı bölümü Ön Lisans, Yönetim Bilişim Sistemleri Lisans öğrenimi aldım. Askerlik görevimi tamamladım. Uzmanlık alanım; C# ve SQL Programlama dilleri ile müşteri odaklı, kullanıcı dostu ERP ve CRM gibi sistemleri geliştirmektir. Ayrıca şuanda PHP ve MYSQL alanında projeler geliştirmekteyim. C++, Phyton, Xamarin, MVC gibi konuları öğrenmek ve kendimi geliştirme çabası içerisindeyim. Discord için: https://discord.gg/FBxZeHu9

Değerli yorumlarınızı bekliyorum. :)

Yorumlar (2)

  1. // Merhaba, öğretmenimiz aşagıdakı kodu ekrana yazıp aldıgımız hata mesajını sebebini arastırmamızı ıstedı pek anlamadım.:( Yardımcı olur musunuz?
    const double PI =3.14;
    const double PI;
    Console.WriteLine(PI);

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.