C++ İle Referansların Kullanımı(C++ Referans Örneğimiz)


08.04.2012-20:30 Tarihinde Eklendi.
www.seyfettinkahveci.com Derecelendirme: 10 / 10 Oy Sayısı: 16003127Toplam Puan: 37770 / Yorum Sayısı: 412003127 adet.


refe.h

ifndef REFE_H
#define REFE_H
#include <iostream>//kütüphane tanımlaması yapıyoruz

using namespace std;//isim uzayı tanımlıyoruz her satırın başına std: koymamak için

class refe//refe adında bir sınıf oluşturuyoruz
{
    public://herkesin erişebileceği bilgilerin yer aldığı blok
        refe();//constructor yani sınıfla ilgili işlem yapıldığında ilk çalışacak blok
        virtual ~refe();//destructor yani program kapanırken çalışacak blok
        void adl(int &z);//adl adında bir fonsiyon tanımlıyoruz.parantez içindeki &z z nin gelen değerin referansı olduğu tanımlanır.
    private://sadece bu sınıfın üyesi olanların erişebileceği blok

};

#endif // REFE_H

refe.cpp:

#include "refe.h"//headerımızı çağırıyoruz
refe::refe()//constructor
{
}
refe::~refe()//destructor
{
}
 void refe::adl(int &z){//adl adında bir fonsiyon tanımlıyoruz.parantez içindeki &z z nin gelen değerin referansı olduğu tanımlanır.
     cout<<z<<endl;//z referansının içeriği ekrana yazdırılır
 }

main.cpp:

#include "refe.h"//headerımızı çağırıyoruz

int main()
{
    int b=55;//integer tipinde b değişkenimizin değeri 55
    refe a;//refe classımızı artık a temsil etmektedir.
    a.adl(b);//a classımızın içinde adl fonksiyonuna b yi gönder
    int &c=b;//integer tipinde ve aynı zamanda referans olarak c adında değişken tanımlanıyor ve içine b nin içerği aktarılıyor
    c=155;//c=155 ile cnin ieriği değişti dolayısıyla c bir referans olduğu için ve cde byi temsil ettiği için b de 155 oldu
    int *e;//integer tipinde e adında bir pointer
    e=&b;//pointerımızın içeriğine b değişkeninin içeriği aktarılır.
    *e=255;//e pointerının içeriği 255 oldu aynı zamanda b değiştiği için c de değişti.
    cout<<c<<b<<*e;//ekrana 255 255 255 yazar.Sebebi e b yi değiştirdi ve c de byi referans gösteriyordu dolayısıyla hepsi değişti.
    return 0;//programı bitir.
}

Kod Hakkında Anlamadığınız Bir Kısım Olursa Yorum Ekleye Yazın En Kısa Sürede Cevaplamaya Çalışırım.

Seyfettin KAHVECİ
Balıkesir Üniversitesi
NEF-BOTE



Yazının tamamının kopyalanması yasaktır. En baştaki birkaç paragrafı kopyalayıp, yazıya link verebilirsiniz. Aksi durumda uyarılmaksızın yasal yollara gidilecektir.

Uzun süredir yorumlara cevap veremediğim için sistem yeni yorumlara kapatılmıştır. Anlayışınız için teşekkürler.
Yorumlar
Bu makale için henüz hiç yorum yapılmamış.