İşaretçi ve Referans Arasındaki Fark
Yazar:
Laura McKinney
Yaratılış Tarihi:
1 Nisan 2021
Güncelleme Tarihi:
1 Temmuz 2024
![İşaretçi ve Referans Arasındaki Fark - Teknoloji İşaretçi ve Referans Arasındaki Fark - Teknoloji](https://a.fondoperlaterra.org/technology-differences/difference-between-pointer-and-reference.jpg)
İçerik
“Pointer” ve “reference” her ikisi de başka bir değişkeni işaret etmek veya yönlendirmek için kullanılır. Ancak, ikisi arasındaki temel fark, bir işaretçi değişkeninin, bellek konumu içinde depolanan bir değişkene işaret etmesidir. Başvuru değişkeni, kendisine atanmış bir değişken için bir takma addır. Aşağıdaki karşılaştırma tablosu, bir işaretçi ve referans arasındaki diğer farkları incelemektedir.
- Karşılaştırma Tablosu
- Tanım
- Anahtar Farklılıklar
- Sonuç
Karşılaştırma Tablosu
Karşılaştırma için temel | Işaretçi | Referans |
---|---|---|
Temel | İşaretçi, bir değişkenin hafıza adresidir. | Referans, bir değişken için bir takma addır. |
İade | İşaretçi değişkeni, işaretçi işaretinden önce gelen işaretçi değişkeninde depolanan adreste bulunan değeri döndürür *. | Referans değişkeni, referans işareti ve öncesinde gelen değişkenin adresini döndürür. |
Operatörler | *, -> | & |
Boş Referans | İşaretçi değişkeni NULL'a başvurabilir. | Referans değişkeni asla NULL'a atıfta bulunamaz. |
Başlatma | Başlatılmamış bir işaretçi oluşturulabilir. | Başlatılmamış bir referans hiçbir zaman oluşturulamaz. |
Başlatma Zamanı | İşaretçi değişkeni programda herhangi bir zamanda başlatılabilir. | Referans değişkeni yalnızca oluşturulduğu sırada başlatılabilir. |
reinitialization | İşaretçi değişkeni, gerektiği kadar yeniden başlatılabilir. | Referans değişken, programda bir daha asla yeniden başlatılamaz. |
Pointer'un tanımı
Bir “pointer”, başka bir değişkenin hafıza konumunu tutan bir değişkendir. İşaretçi değişkeni tarafından kullanılan işleçler * ve -> 'dir. İşaretçi değişkeni bildirimi, ‘*’ işaretini ve değişken adını izleyen temel veri türünü içerir.
type * var_name;
İşaretçiyi bir örnek yardımıyla anlayalım.
int a = 4; int * ptr = & a; cout <Oysa referans operatörü & dir.
Not:
Java işaretçileri desteklemiyor.
Sonuç
İşaretçi ve referans her ikisi de başka bir değişkeni işaret etmek veya yönlendirmek için kullanılır. Ancak her ikisi de kullanımı ve uygulanmasında farklılık gösterir.