Da li izvedena klasa nasljeđuje konstruktora?
Da li izvedena klasa nasljeđuje konstruktora?

Video: Da li izvedena klasa nasljeđuje konstruktora?

Video: Da li izvedena klasa nasljeđuje konstruktora?
Video: Nasljeđivanje klasa 2024, Maj
Anonim

U nasleđe , the izvedena klasa nasljeđuje svi članovi (polja, metode) baze klasa , ali izvedena klasa ne mogu nasljediti the konstruktor baze klasa jer konstruktori nisu članovi klasa.

Isto tako, ljudi se pitaju, da li klase nasljeđuju konstruktore?

Konstruktori nisu naslijeđeno . Poziva ih dijete implicitno ili eksplicitno konstruktor . Kompajler kreira default konstruktor (jedan bez argumenata) i zadana kopija konstruktor (jedan sa argumentom koji je referenca na isti tip). AŽURIRANJE: U C++11, konstruktori može biti naslijeđeno.

Takođe, šta je konstruktor u izvedenoj klasi? A Konstruktor izvedene klase ima pristup samo svojim klasa članovi, ali a Izvedena klasa objekat takođe imaju naslijeđeno vlasništvo baze klasa , i samo baza konstruktor klase može ispravno inicijalizirati bazu klasa članovi. Otuda sve konstruktori se pozivaju, inače objekat ne bi bio pravilno konstruisan.

Osim toga, da li se konstruktori i destruktori mogu naslijediti?

Izvedene klase uradi ne nasljediti ili preopterećenja konstruktori ili destruktori iz njihovih osnovnih klasa, ali oni uradi pozovite konstruktor i destruktor osnovnih klasa. Konstruktori se također pozivaju kada se kreiraju lokalni ili privremeni objekti klase, i destruktori pozivaju se kada lokalni ili privremeni objekti izađu izvan opsega.

Koji se konstruktor poziva prvi u nasljeđivanju?

Konstruktor i destruktor u jednom nasleđe Osnovna klasa konstruktori su zvao prvi i izvedena klasa konstruktori su pozvao sljedeći u singlu nasleđe.

Preporučuje se: