C++ Ile Nesne Yönelimli Programlama(C++ Sınıflarına Işaretçiler)
--
Bu yazılar https://www.tutorialspoint.com/cplusplus/ adresindeki yazı dizilerinin çevirileridir.
C++ sınıfına erişen işaretçi, bir yapının(struct) işaretçisi ile tam olarak aynı şekilde, yapılara işaretçilerle yaptığınız gibi üye erişim operatörünü “ -> “ kullandığınız bir sınıfa işaretçinin üyelerine erişmek için kullanılır. Tüm işaretçilerde de olduğu gibi kullanmadan önce bu işaretçiyi de tanımlamanız ve başlangıç değerini atamanız gerekir.(initialization işlemi)
Bir sınıfa atanan işaretçi kavramı için takip eden örneği inceleyim -
#include <iostream>
using namespace std;
class Kutu {
public:
// Yapıcı tanımlaması
Box(double u = 2.0, double g = 2.0, double y = 2.0) {
cout <<“Yapici cagrildi.” << endl;
uzunluk = u;
genislik = g;
yukseklik = y;
}
double Hacim() {
return uzunluk * genislik * yukseklik;
}
private:
double uzunluk; // Kutunun uzunlugu
double genislik; // Kutunun genisligi
double yukseklik; // Kutunun yuksekligi
};
int main(void) {
Kutu Kutu1(3.3, 1.2, 1.5); // kutu1 tanımlanması
Kutu Kutu2(8.5, 6.0, 2.0); // kutu2 tanımlanması
Kutu *ptrKutu; // İşaretçinin bir sınıfa tanımlanması.
// İlk nesnenin adresinin işaretçiye kaydedilmesi
ptrKutu = &Kutu1;
// Üye erişim operatörüyle erişim denemesi
cout << “Kutu1’in hacmi: “ << ptrKutu->Hacim() << endl;
// İkinci nesnenin adres kaydı
ptrKutu = &Kutu2;
// Üye erişim operatörüyle erişim denemesi
cout << “Kutu2’nin hacmi: “ << ptrKutu->Hacim() << endl;
return 0;
}
Kod derlenip çalıştırıldığında, takip eden sonucu oluşturur -
Yapici cagrildi.
Yapici cagrildi.
Kutu1’in hacmi: 5.94
Kutu2’nin hacmi: 102