21 Mart 2025 Cuma

C++ Pointerlar ve Const Nedir ?


C++'da pointer'lar (işaretçiler) ve const (sabit) kavramları, bellek yönetimi ve veri güvenliği açısından temel öneme sahiptir. İşte bu kavramların ayrıntılı bir açıklaması:

Pointer'lar (İşaretçiler)

  • Tanım:
    • Pointer, bellekteki bir değişkenin adresini tutan bir değişkendir.
    • Başka bir değişkenin bellek konumuna "işaret eder".
    • Pointer'lar, dinamik bellek yönetimi, fonksiyonlara değişkenlerin adreslerini geçirme ve dizilerle çalışma gibi birçok önemli işlemde kullanılır.
  • Kullanımı:
    • Bir pointer değişkeni tanımlamak için * (yıldız) operatörü kullanılır.
    • Bir değişkenin adresini almak için & (adres) operatörü kullanılır.
    • Bir pointer'ın işaret ettiği değere erişmek için tekrar * operatörü kullanılır.
  • Örnek:
C++

int sayi = 10;
int *ptr = &sayi; // ptr, sayi değişkeninin adresini tutar
cout << *ptr; // ptr'nin işaret ettiği değeri (10) yazdırır

Const (Sabit)

  • Tanım:
    • const anahtar kelimesi, bir değişkenin değerinin değiştirilemez olduğunu belirtir.
    • Veri güvenliğini sağlamak ve program hatalarını önlemek için kullanılır.
    • const ile tanımlanan değişkenlere "sabit" denir.
  • Kullanımı:
    • const anahtar kelimesi, değişkenin türünden önce veya sonra kullanılabilir.
    • Pointer'larla birlikte kullanıldığında, pointer'ın kendisi veya işaret ettiği değer sabitlenebilir.
  • Pointer'larla Const Kullanımı:
    • Const Pointer:
      • Pointer'ın kendisi sabittir, yani farklı bir adresi gösteremez.
      • Ancak, işaret ettiği değer değiştirilebilir.
      • Örnek: int *const ptr;
    • Pointer to Const:
      • Pointer'ın işaret ettiği değer sabittir, yani değiştirilemez.
      • Ancak, pointer'ın kendisi farklı bir adresi gösterebilir.
      • Örnek: const int *ptr;
    • Const Pointer to Const:
      • Hem pointer'ın kendisi hem de işaret ettiği değer sabittir.
      • Ne pointer'ın adresi ne de işaret ettiği değer değiştirilebilir.
      • Örnek: const int *const ptr;
  • Örnek:
C++

const int sabitSayi = 20;
const int *ptr = &sabitSayi; // ptr, sabitSayi'nin adresini tutar
// *ptr = 30; // Hata: ptr'nin işaret ettiği değer değiştirilemez
int baskaSayi = 30;
ptr = &baskaSayi; // Geçerli: ptr farklı bir adresi gösterebilir

Önemli Notlar:

  • Pointer'lar, bellek hatalarına yol açabilecek güçlü ancak dikkatli kullanılması gereken araçlardır.
  • Const, verilerin yanlışlıkla değiştirilmesini önleyerek programın güvenilirliğini artırır.
  • Pointer'lar ve const kavramları, C++'da daha gelişmiş programlama tekniklerinin temelini oluşturur.


 

Benzer Yayınlar

C++ Pointerlar ve Const Nedir ?
4/ 5
Oleh

Abone Olun

Yazılarımızı beğeniyor musunuz?Abone Olun Yazılarımı Kaçırmayın.

Lütfen yorum yaparken şunlara dikkat ediniz:

Küfürlü, siyasi veya huzur bozucu yorumlar yapmamaya,
Reklam, spam gibi yorumlar yapmamaya.