Nasıl türetilmiş sınıf, üst sınıf bir işlevi çağırmak için?
Nasıl türetilmiş bir sınıf C kullanarak ana işlevi arayayım mı ? Örneğin, bir sınıf parent
, aradım ve bir üst sınıf türetilir child
denir. İçinde
her ders print
bir fonksiyonudur. Çocuğun print tanımında velilere bir çağrı print yapmak istiyorum. Bunu nasıl yapıyor hakkında gitmek istiyorsunuz?
CEVAP
Açık konuşmak gerekirse risk alırım, işlevini çağırın, eğer temel sınıfta tanımlı eğer türetilmiş sınıf private
olmadığı sürece) otomatik olarak kullanılabilir.
Eğer türetilmiş bir sınıf aynı imzaya sahip bir fonksiyon varsa temel sınıfın adı iki nokta üst üste base_class::foo(...)
takip ekleyerek bu belirsizliği ortadan kaldırmak. Java
C#
, C
yok aksine dikkat etmelisinizdeğil"(super
base
) C
beri karışıklığa neden olabilir multiple inheritance destekler. "temel sınıf için bir anahtar kelime var
class left {
public:
void foo();
};
class right {
public:
void foo();
};
class bottom : public left, public right {
public:
void foo()
{
//base::foo();// ambiguous
left::foo();
right::foo();
}
};
Bu arada, diğer temel sınıflardan birini ifade etmek için yolu yok bu yana iki defa doğrudan aynı sınıftan türetmek.
class bottom : public left, public left { // Illegal
};
Nasıl bir sınıf içinde bir şablon işle...
Nasıl belirli bir öğe için bir sınıf e...
Nasıl sınıf iterable yapmak için?...
Nasıl bir sınıf özellikleri listesini ...
Nasıl jenerik T türü bir sınıf örneği ...