"Héritage"
En C #, l'énumération ne peut pas hériter des autres. Cela est dû à la mise en œuvre de l'énumération dans la CLI.
La grammaire d'énumération qui ressemble à une autre énumération est en fait une représentation de la manière exponentielle de la valeur inférieure de l'énumération, pas un réel héritage. Par exemple:
Cette grammaire peut être trompeuse car elle laisse entendre que la consommation hérite de la base. Cependant, en fait, Consume est toujours une énumération distincte, qui hérite de System.enum.
<code class="language-c#">namespace low { public enum Base { X, Y, Z } } namespace mid { public enum Consume : Base { // 隐式继承 Base 的值 } }</code>
Ce comportement est clairement défini dans la section 8.5.2 de la spécification CLI:
Toute énumération doit être dérivée de System.enum.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!