C++ Ile Nesne Yönelimli Programlama(this Işaretçisi)
--
Bu yazılar https://www.tutorialspoint.com/cplusplus/ adresindeki yazı dizilerinin çevirileridir.
C++ dilinde tüm nesnelerin kendi adreslerine erişim veren this(bu) adlı işaretçisi vardır. This işaretçisi tüm üye fonksiyonlarında dahili bir parametredir. Bu nedenle, üye fonksiyonlarında bir nesneye başvurmak için kullanılabilir.
Arkadaş fonksiyonlarının this işaretçisi yoktur, çünkü arkadaş fonksiyonlar sınıf üyesi değildir. Sadece üye fonksiyonlarının this işaretçisi vardır.
Takip eden örnekle this işaretçisinin konseptini anlamaya çalışalım -
#include <iostream>
using namespace std;
class Kutu {
public:
// Yapıcı tanımı
Kutu(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;
}
int karsilastir(Kutu kutu) {
return this->Hacim() > kutu.Hacim();
}
private:
double uzunluk; // Kutunun uzunlugu
double genislik; // Kutunun genişliği
double yukseklik; // Kutunun yüksekliği
};
int main(void) {
Kutu Kutu1(3.3, 1.2, 1.5); // Kutu1 tanımı
Kutu Kutu2(8.5, 6.0, 2.0); // Kutu2 tanımı
if(Kutu1.karsilastir(Kutu2)) {
cout << “Kutu2 Kutu1 den kucuktur” <<endl;
} else {
cout << “Kutu2 Kutu1 den buyuktur ya da ona esittir“ <<endl;
}
return 0;
}
Kod derlenip çalıştırıldığında -
Yapici cagrildi.
Yapici cagrildi.
Kutu2 Kutu1 den buyuktur ya da ona esittir