$1.99 Domains* at GoDaddy.com

C++ Referans Türünden Bir Göstericinin Tanımlanması

cders-131Genel biçimi:

 

<tür> &<referans_ismi> = <nesne>

 

Örnek:

 

int a = 10;

int &b = a;

 

double x;

……….

double &y = x;

 

Bir referans ilk değer verilerek tanımlanmak zorundadır. Örneğin:

 

int &r;                         /*         hata     */

double &r = 10.2;       /*         hata     */

 

Referansa verilen ilk değer aynı türden bir nesne olmak zorundadır.

 

double x = 10 ;

int &r = x;       /*         Hata. Farklı türden bir nesneyle ilk değer verilmiş.  */

int &r = a;       /*         Okunuşu: r int türünden bir referanstır          */

 

Referanslar bir çeşit düzeyi yüksek göstericidir. Referansların içerisinde adres bilgisi bulunur. Derleyici bir referans tanımlandığında ilk değer olarak verilen nesnenin adresini referansın içerisine yerleştirir. Referansları iyi anlayabilmek için onların eşdeğer gösterici karşılıklarını düşünmek gerekir. Eş değer gösterici karşılığı referans yerine gösterici kullanıldığında elde edilecek eş değer kod anlamına gelir.

 

int a = 10;

int &b = a;

 

Eşdeğer karşılığı:

 

int a = 10;

int *b = &a;

 

Bir referans ilk değer verildikten sonra kullanıldığında artık referans içerisindeki adres değil referans içerisindeki adreste bulunan bilgi temsil edilir.

 

 

/*———-fark11.cpp————–*/

 

#include <stdio.h>

 

#if 1

 

void main(void)                     /*         referans kullanımı       */

{

    int a = 10;

    int &b = a;

 

    b = 50;

    printf(“%d  %d\n”, b, a);

}

 

#endif

 

#if 0

 

void main(void)                     /*         referansın gösterici karşılığı   */

{

    int a = 10;

    int *b = &a;

 

    *b = 50;

    printf(“%d  %d\n”, *b, a);

}

 

#endif

/*————————————-*/

 

int a = 10;

int &b = &a;               /*         Hata: &a int türünden değil adres türündendir         */

Kategoriler: C++ Programlama, Yazılım

Tags: , ,

Yorumlar

Yorum Yok

Yorumunuzu Ekleyin

Yorum eklemek için giris yapmalısınız.