Sök…


Diamantproblem - exempel

Diamantproblem är ett vanligt problem som inträffade i objektorienterad programmering, medan du använder multiple-inheritance .

Tänk på fallet där class C ärvs från class A och class B Anta att både class A och class B har en metod som heter foo() .

När vi sedan kallar metoden foo() , kan kompilatorn inte identifiera den exakta metoden vi försöker använda

  • foo() från class A
  • foo() från class B

Detta kallas diamantproblemet i princip. Det finns några varianter av detta problem. För att undvika detta finns det flera tillvägagångssätt. Java tillåter inte flera arv. Därför undviks problemet. Men C ++ tillåter flera arv, därför måste du vara noga med att använda flera arv.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow