C++ dilinde sabitler, değerlerinin program çalışırken değiştirilemeyen, yani sabit olan değişkenlerdir. Sabitler, programın her yerinde değişmez bir değeri temsil etmek için kullanılır. Bu yazıda, C++ sabitlerini, kullanımını ve nasıl tanımlandığını detaylı bir şekilde öğreneceksiniz.
Sabit Tanımlama
C++ dilinde bir sabit tanımlamak için const
anahtar kelimesi kullanılır. Bu anahtar kelime, bir değişkenin değerinin, program boyunca değiştirilmesini engeller.
Sabit Tanımlama Söz Dizimi:
const veri_tipi sabit_adi = sabit_değer;
Örnek:
const int yaş = 25;
const double pi = 3.14159;
const char harf = 'A';
Yukarıdaki örnekte, yaş
, pi
, ve harf
sabitleri, bir kere atandıktan sonra değerleri değiştirilemez.
Sabitlerin Özellikleri
- Değeri Sabittir:
const
ile tanımlanan bir değişkenin değeri, bir kez atandıktan sonra değiştirilemez. - Derleme Zamanı Kontrolü: Sabitler, derleyici tarafından kontrol edilir. Bu, yanlış bir değerin atandığı durumların derleme zamanında tespit edilmesini sağlar.
- Hızlı ve Güvenli: Sabitler, değerlerinin değişmemesi gerektiği durumlarda kullanılarak kodun daha güvenli olmasını sağlar ve programın çalışma hızını artırabilir.
Sabit Kullanım Alanları
- Matematiksel Sabitler: C++ programlarında sıklıkla kullanılan matematiksel sabitleri tanımlamak için kullanılabilir. Örneğin, pi sayısı.
- Eşik Değerler: Programınızda değişmeyen sınır değerlerini saklamak için
const
kullanabilirsiniz. Örneğin, belirli bir yaş sınırı. - Dizi Boyutları: Sabitler, sabit dizi boyutları belirlemek için de kullanılır.
Örnek 1: Matematiksel Sabitler
#include <iostream>
using namespace std;
int main() {
const double pi = 3.14159; // Pi sabiti
cout << "Pi sayısı: " << pi << endl;
return 0;
}
Örnek 1: Eşik Değerler
#include <iostream>
using namespace std;
int main() {
const int yaş_sınırı = 18; // Yaş sınırı sabiti
int kullanıcı_yaşı = 20;
if (kullanıcı_yaşı >= yaş_sınırı) {
cout << "Giriş yapabilirsiniz." << endl;
} else {
cout << "Yaşınız uygun değil." << endl;
}
return 0;
}
const
ve #define
Farkı
C++ dilinde sabitler tanımlamanın iki yolu vardır: const
anahtar kelimesi ve #define
direktifi. Her ikisi de sabitler oluşturur, ancak bazı önemli farklar vardır.
1. const
ile Sabitler
- Derleyici zamanında kontrol edilir.
- Tip güvenliğine sahiptir (yani veri tipi belirtilir).
- Değişkenler gibi sabitler tanımlanır, dolayısıyla scopeları sınırlıdır.
2. #define
ile Sabitler
- Derleyici tarafından değil, preprocessor tarafından işlenir.
- Tip güvenliği yoktur.
- Global olarak geçerlidir ve programın her yerinde kullanılabilir.
Örnek Karşılaştırma:
#define PI 3.14159 // #define ile sabit tanımlama
const double pi = 3.14159; // const ile sabit tanımlama