Par ko kļūst aizsargātais dalībnieks, ja klase tiek mantota publiskā režīmā?
Par ko kļūst aizsargātais dalībnieks, ja klase tiek mantota publiskā režīmā?

Video: Par ko kļūst aizsargātais dalībnieks, ja klase tiek mantota publiskā režīmā?

Video: Par ko kļūst aizsargātais dalībnieks, ja klase tiek mantota publiskā režīmā?
Video: OOP in C++ : How Public, Private & Protected Keyword impacts Inheritance 2024, Novembris
Anonim

1) iekšā aizsargāts mantojums , publiski un aizsargātie locekļi kļūst par aizsargātiem locekļiem atvasinātajā klasē . Privātajā mantojums , viss ir privāti. Jo viņi ir daļa no bāze klasē , un jums ir nepieciešama bāze klasē kas ir daļa no jūsu atvasināts klasē.

Tāpat jūs varat jautāt, kā aizsargātie klases locekļi var kļūt mantojami?

Aizsargāts Mantojums – atvasinot no a aizsargāts bāze klasē , publiskais un aizsargātie locekļi no pamatnes klase kļūst par aizsargātiem locekļiem no atvasinātā klasē . Privāts mantojums – ja tiek iegūts no privātas bāzes klasē , publiskais un aizsargātie locekļi no pamatnes klase kļūst Privāts locekļi no atvasinātā klasē.

Var arī jautāt, kas notiek, ja klase tiek mantota kā privāta? Ar privātais mantojums , publisks un aizsargāts bāzes dalībnieks klasē kļūt Privāts locekļi atvasināto klasē . Tas nozīmē bāzes metodes klasē nekļūst par atvasinātā objekta publisko saskarni. Tomēr tos var izmantot atvasinātā elementa dalībnieku funkcijās klasē.

Ņemot to vērā, vai aizsargātie dalībnieki tiek mantoti?

Tā vienīgā atšķirība notiek patiesībā ar mantojums : Kad klase manto vēl viens, locekļi no atvasinātās klases var piekļūt aizsargātie dalībnieki mantojuši no bāzes klases, bet ne tās privāto locekļi . Ar aizsargāts , visi publiski locekļi no bāzes klases ir iedzimta kā aizsargāts atvasinātajā klasē.

Kāda ir atšķirība starp publisko un aizsargāto mantojumu?

Ar publisks mantojums , var redzēt atvasinātā klase publiska un aizsargāta bāzes dalībnieki. Ar privāto mantojums , tā nevar. Ar aizsargāts , tās var redzēt atvasinātā klase un visas no tās atvasinātās klases.

Ieteicams: