Bonjour,
J'ai un petit souci d'héritage. Je vous expose le problème :
J'ai une classe Hand.
Dans une autre classe, j'ai le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 public class Hand : List<Card> [...]
Le code ne compile pas et j'ai l'erreur suivante : "Impossible de convertir implicitement le type 'System.Collections.Generic.List<Poker.Card>' en 'Poker.Hand'. Une conversion explicite existe (un cast est-il manquant*?)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Hand hand = new Hand(); [...] hand = hand.OrderBy(c => c.Val).ToList();
". Ce que je ne comprends déjà pas puisque la classe Hand hérite de List<Card>.
J'essaye donc de faire le cast :
Cette fois, le code compile mais me renvoie une erreur au Runtime :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 hand = (Hand)hand.OrderBy(c => c.Val).ToList();
"Impossible d'effectuer un cast d'un objet de type 'System.Collections.Generic.List`1[Poker.Card]' en type 'Poker.Hand'"
Si vous pouviez m'éclairer, je vous remercie.
Partager