C++

C++ Kalıtım

C++ Kalıtım
Kalıtım, nesne yönelimli programlamanın çok önemli bir özelliğidir. Programcının mevcut bir sınıftan bir sınıf türetmesine izin verir. Bu, özellikle büyük ve karmaşık bir projede çok kullanışlıdır çünkü programcının kodu yeniden kullanmasına izin verir.

Bu yazıda, C++ programlamasında kalıtım kavramını tartışacağız. C++'da friend fonksiyonu kavramını çalışma örnekleri ile açıklayacağız.

Neden Miras?

Kalıtım, başka bir sınıftan veya temel sınıftan yeni bir sınıf veya türetilmiş sınıf oluşturmaya izin verir. Türetilmiş sınıf veya alt sınıf, ana sınıfın veya temel sınıfın tüm özelliklerine sahip olacaktır. Kodu kalıtım yardımı ile yeniden kullanabiliriz.

Miras Türü

Farklı miras türleri vardır:

  1. Basit/Tek Kalıtım
  2. Hiyerarşik Kalıtım
  3. Çok Düzeyli Kalıtım
  4. Çoklu Kalıtım

Bu yazıda sadece basit/tek kalıtımı ele alacağız.

Örnek 1:

Şimdi, C'deki kalıtım kavramını anlamak için örnek bir programa bakalım++. Bir temel sınıf tanımladık ve ondan sonra başka bir sınıf türettik. Bu nedenle, türetilmiş sınıf, temel sınıftan özelliklere (üyeler ve işlevler) sahip olacaktır.

#Dahil etmek
ad alanı std kullanarak;
sınıf Temel_Sınıf

halka açık:
int i;
geçersiz ekran()

cout << "Display of Base Class " << i << endl;

;
sınıf Derived_Class:genel Base_Class

halka açık:
geçersiz gösteri()

cout << "Show of Derived Class" << endl;

;
int ana()

Derived_Class dc;
DC.ben = 100;
DC.Görüntüle();
DC.göstermek();
0 döndür;

Örnek 2:

Bu, C'deki başka bir kalıtım örneğidir++. Bu örnekte, türetilmiş bir sınıf nesnesi oluşturulduğunda yapıcıların nasıl çağrıldığını göreceğiz.

Aşağıda görebileceğiniz gibi, iki temel sınıf kurucu ve üç türetilmiş sınıf kurucu tanımladık. Aşağıdaki çıktıdan, türetilmiş sınıf kurucusu çağrılmadan önce temel sınıf kurucusunun çağrıldığını açıkça fark edebilirsiniz.

#Dahil etmek
#Dahil etmek
ad alanı std kullanarak;
sınıf Temel_Sınıf

halka açık:
Temel_Sınıf()

cout << "Base_Class - No Parameters" << endl;

Temel_Sınıf(int x)

cout << "Base_Class - Parameters : " << x << endl;

;
sınıf Derived_Class:genel Base_Class

halka açık:
Türetilmiş sınıf()

cout << "Derived_Class - No Parameters" << endl;

Derived_Class(int y)

cout << "Derived_Class - Parameters : " << y << endl;

Derived_Class(int x,int y):Base_Class(x)

cout << "Param of Derived_Class : " << y << endl;

;
int ana()

Derived_Class d(7,19);

Örnek 3:

Bu örnekte, türetilmiş sınıf nesnelerinin nasıl kullanılabileceğini göreceğiz.

Gördüğünüz gibi, tanımlanmış iki sınıf var: Rectangle_Class ve Cube_Class. Rectangle_Class, türetilmiş sınıfın, i.e., Cube_Class türetilmiştir. Bu nedenle, özellikleri Rectangle_Class'tan Cube_Class'a miras alıyoruz.

Ayrıca, genel erişim kontrolü ile Cube_Class'ı devraldığımızı fark edebilirsiniz. Bu, türetilmiş sınıfın, temel sınıfın özel olmayan tüm üyelerine erişebileceği anlamına gelir.

Türetilmiş sınıfın bir nesnesini ilan ettik ve ardından temel sınıftan yöntemleri çağırdık, i.e., setLength() ve setBreadth().

#Dahil etmek
ad alanı std kullanarak;
class Rectangle_Class

özel:
int uzunluk;
int genişlik;
halka açık:
Rectangle_Class();
Rectangle_Class(int l,int b);
Rectangle_Class(Rectangle_Class &r);
int getLength()

dönüş uzunluğu;

int Genişlik()

dönüş genişliği;

void setLength(int l);
geçersiz setBreadth(int b);
int alan();
;
class Cube_Class:genel Rectangle_Class

özel:
int yükseklik;
halka açık:
Küp_Sınıfı(int h)

yükseklik=h;

int getHeight()

dönüş yüksekliği;

void setHeight(int h)

yükseklik=h;

int hacim()

getLength()*getBreadth()*height döndür;

;
Dikdörtgen_Sınıfı::Dikdörtgen_Sınıfı()

uzunluk=1;
genişlik=1;

Rectangle_Class::Rectangle_Class(int l,int b)

uzunluk=l;
genişlik=b;

Rectangle_Class::Rectangle_Class(Rectangle_Class & r)

uzunluk=r.uzunluk;
genişlik=r.genişlik;

void Rectangle_Class::setLength(int l)

uzunluk=l;

void Rectangle_Class::setBreadth(int b)

genişlik=b;

int Dikdörtgen_Sınıfı::alan()

dönüş uzunluğu*genişlik;

int ana()

Küp_Sınıfı c(8);
c.setUzunluk(12);
c.setBreadth(9);
cout<<"Volume is "<

Sonuç:

Bu yazımda C de Kalıtım kavramını anlattım++. C++, "çoklu kalıtım" (i.e., özellikleri birden çok temel sınıftan veya üst sınıftan devralma). Ancak, daha basit hale getirmek için burada yalnızca tek mirası dikkate aldım. C++ programlamasında kalıtımı nasıl kullanabileceğimizi ve kodu yeniden nasıl kullanabileceğimizi açıklamak için üç çalışma örneği gösterdim. Üstelik bu, C'nin çok kullanışlı bir özelliğidir++.

Linux'ta GameConqueror Cheat Engine Nasıl Kullanılır
Makale, Linux'ta GameConqueror hile motorunu kullanma hakkında bir kılavuzu kapsar. Windows'ta oyun oynayan birçok kullanıcı, oyun deneyimini geliştir...
Linux için En İyi Oyun Konsolu Emülatörleri
Bu makale, Linux için kullanılabilen popüler oyun konsolu öykünme yazılımını listeleyecektir. Öykünme, oyun konsollarının, komut setlerinin ve ilgili ...
Best Linux Distros for Gaming in 2021
The Linux operating system has come a long way from its original, simple, server-based look. This OS has immensely improved in recent years and has no...