Héritage de 2 classes

Résolu
furax13 Messages postés 90 Date d'inscription mardi 28 octobre 2003 Statut Membre Dernière intervention 24 avril 2008 - 16 oct. 2006 à 12:11
Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 - 16 oct. 2006 à 13:32
bonjour,
j'ai plusieurs classes métiers qui peuvent être soit des classes de type TCOContrainteChauffe ou TCOContrainteRefroidissement et qui pour certaines d'entre elles en plus de type TCOContrainteIterative.

Toutes ces classes doivent hériter de la classe mère TCOCOntrainte.

j'ai donc défini 
   TCOContrainteChauffe = class(TCOContrainte)
   TCOContrainteRefroidissement = class(TCOContrainte)
TCOContrainteTypeHotSpot = class (TCOContrainteChauffe )

soit mes classes suivantes :
 TCOClasseHotSpot1 = class (TCOContrainteChauffe)
 TCOClasseHotSpot2 = class (TCOContrainteChauffe)
 TCOClasseHotSpot3 = class (TCOContrainteTypeHotSpot)
 TCOClasseHotSpot4 = class (TCOContrainteTypeHotSpot)
 TCOClasseHotSpot5 = class (TCOContrainteTypeHotSpot)

 TCOClasseColdSpot1 = class (TCOContrainteRefroidissement)
 TCOClasseColdSpot2 = class (TCOContrainteRefroidissement)

j'aimerai que TCOClasseHotSpot2 , TCOClasseHotSpot4 , TCOClasseHotSpot45 et TCOClasseColdSpot1 soient également de type TCOContrainteIterative

comment dois-je procèder?
Comment définir TCOContrainteIterative ?

merci d'avance

emmanuel

1 réponse

Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 6
16 oct. 2006 à 13:32
tu peux essayer de mettre une de tes super classe en tant que Interface, mais elle ne pourra pas avoir de champs.  

TCOConstrainte = class(TInterfacedObject)
ICOContrainteIterative = interface(IInterface)

TCOContrainteChauffe = class(TCOContrainte)
TCOContrainteRefroidissement = class(TCOContrainte)
TCOContrainteTypeHotSpot = class (TCOContrainteChauffe )

TCOClasseHotSpot1 = class (TCOContrainteChauffe)
 TCOClasseHotSpot2 = class (TCOContrainteChauffe, ICOContrainteIterative)
 TCOClasseHotSpot3 = class (TCOContrainteTypeHotSpot)
 TCOClasseHotSpot4 = class (TCOContrainteTypeHotSpot, ICOContrainteIterative)
 TCOClasseHotSpot5 = class (TCOContrainteTypeHotSpot, ICOContrainteIterative)

 TCOClasseColdSpot1 = class (TCOContrainteRefroidissement, ICOContrainteIterative)
 TCOClasseColdSpot2 = class (TCOContrainteRefroidissement)
3
Rejoignez-nous