Μπορούν τα ιδιωτικά μέλη μιας βασικής κλάσης να είναι κληρονομήσιμα;

Μπορούν τα ιδιωτικά μέλη μιας βασικής κλάσης να είναι κληρονομήσιμα;
Μπορούν τα ιδιωτικά μέλη μιας βασικής κλάσης να είναι κληρονομήσιμα;
Anonim

Τα Private μέλη της βασικής κλάσης κληρονομούνται πάντα σε παράγωγη κλάση στη C++; Έβλεπα παντού ότι τα ιδιωτικά μέλη της βασικής κλάσης δεν κληρονομούνται ποτέ στην παράγωγη κλάση, ανεξάρτητα από το πώς κληρονομείτε τη βασική κλάση (ιδιωτική ή προστατευμένη ή δημόσια).

Μπορεί να κληρονομηθεί ένα μέλος ιδιωτικής τάξης;

Ιδιωτικά μέλη σε μια Superclass

Μια υποκατηγορία δεν κληρονομεί τα ιδιωτικά μέλη της γονικής τάξης. Ωστόσο, εάν η υπερκλάση έχει δημόσιες ή προστατευμένες μεθόδους πρόσβασης στα ιδιωτικά της πεδία, αυτές μπορούν επίσης να χρησιμοποιηθούν από την υποκλάση.

Πώς κληρονομείτε ιδιωτικά μέλη της βασικής κλάσης στη C++;

Με την ιδιωτική κληρονομιά, το δημόσιο και προστατευμένο μέλος της βασικής κλάσης γίνονται ιδιωτικά μέλη της παραγόμενης κλάσης. Αυτό σημαίνει ότι οι μέθοδοι της βασικής κλάσης δεν γίνονται η δημόσια διεπαφή του παραγόμενου αντικειμένου. Ωστόσο, μπορούν να χρησιμοποιηθούν μέσα στις συναρτήσεις μέλους της παραγόμενης κλάσης.

Ποια είναι η διαφορά μεταξύ ιδιωτικής και προστατευμένης κληρονομιάς;

Η

προστατευμένη κληρονομικότητα κάνει το τα δημόσια και προστατευμένα μέλη της βασικής κλάσης που προστατεύονται στην παράγωγη κλάση. η ιδιωτική κληρονομικότητα καθιστά τα δημόσια και προστατευμένα μέλη της βασικής κλάσης ιδιωτικά στην παράγωγη κλάση.

Όταν η κληρονομιά είναι ιδιωτική, η ιδιωτική μέθοδος στη βασική κλάση είναι;

Όταν η κληρονομιά είναι ιδιωτική, οι ιδιωτικές μέθοδοι στη βάσηΗ κλάση είναι μη προσβάσιμη στην παράγωγη κλάση (στην C++). Για περισσότερες πληροφορίες σχετικά με την κληρονομικότητα, Ανατρέξτε: Η κληρονομικότητα στην C++ Η επιλογή (A) είναι σωστή.

Συνιστάται: