$1.99 Domains* at GoDaddy.com

Türemiş Sınıf Nesnesinin Adresinin Taban Sınıf Göstericisine Atanması İşleminin Program İçerisinde Karşılaşılabilen Çeşitli Durumları

cders-152Türemiş sınıf nesnesinin adresi açık ya da gizli çeşitli kodlarla taban sınıf göstericisine geçirilebilmektedir.

 

1. Açık bir biçimde yapılan atamalarla:

 

Yani taban sınıf türünden bir gösterici tanımlanır, türemiş sınıf türünden bir nesnenin adresi atanır.

 

{

            A *p;   /*Taban sınıf türünden bir gösterici*/

            B x;     /*Türemiş sınıf türünden nesne*/

            p = &x;           /*Geçerli*/

}

 

2. Fonksiyon çağırma yoluyla ve gösterici kullanılarak:

 

Bu durumda fonksiyonun parametre değişkeni taban sınıf türünden bir göstericidir. Fonksiyon türemiş sınıf nesnesinin adresiyle çağırılır. Bu biçimde atama işlemi en sık rastlanan atama işlemidir.

 

void fonk(A *p)

{

            p -> DispA();

}

 

void main(void)

{

            B n(10, 20);

 

            fonk(&n);

}

 

3. Açıkça ve referans kullanılarak yapılan atamalar:

 

Taban sınıfa ilişkin bir referans türemiş bir sınıfa ilişkin bir nesneyle ilk değer verilerek tanımlanabilir. Derleyici bu durumda türemiş sınıf nesnesinin taban sınıf veri eleman bloğunun adresini taban sınıf referansına atar.

 

{

            B n(10, 20);

            A &r = n;        /*Geçerli*/

 

            r.Disp();          /*Geçerli*/

}

 

4. Fonksiyon çağırma yoluyla ve referans kullanılarak:

 

Bu durumda fonksiyonun parametre değişkeni taban sınıf türünden bir referanstır. Fonksiyon da türemiş sınıf nesnesinin kendisiyle çağırılır.

 

void fonk(A &p)

{

            p.DispA();

}

 

void main(void)

{

            B n(10, 20);

 

            fonk(n);

}

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

Tags: , , ,

Yorumlar

Yorum Yok

Yorumunuzu Ekleyin

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