Escuché que el anidamiento de enum
no es posible en C#. Entonces, ¿cómo puede convertir la siguiente estructura a una jerarquía de clases u otra cosa? Así que quiero que la clase actúe como un enum
enum anidado en C# y clases
Respuesta
clases anidadas y campos const
class Cat1
{
public const int Public = 1;
public class Private
{
public const int Abc = 2;
public const int Mno = 3;
public const int Pqr = 4;
}
}
Y mientras lo hace, marque las clases estáticas. – ver
Merece la pena señalar que la variable sería simplemente un 'int', por lo que podría obtener un valor no válido de otro lugar. –
puede utilizar el hirerchy como estructura de clases, que cada clase tiene una propiedad de su propia de enumeración
public class Cat1
{
public enum Publicpart
{
Xyz
}
private enum Privatepart
{
Abc, Mno, Pqr
}
}
entonces puedes llamarlo como esto
Cat1.Publicpart.Xyz
o si tiene acceso privado
Cat1.Privatepart.Abc
Usted debe reconsiderar si se quiere resolver estos problemas a través de las enumeraciones porque la primera categoría enumeración representa para mí una especie de concepto de "visibilidad", mientras que la segunda categoría es solo válido de instancias con visibilidad "pública".
¿Qué pasa con la solución de su problema con algo como esto:
public enum Visibility
{
Public,
Private
}
public abstract class VisibilityState
{
public Visibility Visibility { get; private set; }
protected VisibilityState(Visibility visibility)
{
Visibility = visibility;
}
}
public class PublicVisibilityState : VisibilityState
{
public PublicVisibilityState() : base(Visibility.Public) { }
}
public class PrivateVisibilityState : VisibilityState
{
public PrivateVisibilityState() : base(Visibility.Private) { }
public OtherEnum OtherEnumState { get; set; }
}
public enum OtherEnum
{
Abc, Mno, Pqr
}
- 1. Enum en C# y foreach
- 2. C++ typedef enum y justo ENUM
- 3. enum anidado, ¿por qué se usa?
- 4. Clases de estilo Java-enum en Objective-C?
- 5. .NET XmlSerializer y clases anidadas en C#
- 6. enum vs. cargadores de clases
- 7. Múltiples clases Enum en un archivo Java
- 8. Diferencia de Enum entre Java y C++?
- 9. clases privadas en Objective C
- 10. C# enum en la interfaz/clase base?
- 11. C# Interfaz y clases base
- 12. 64 bit enum en C++?
- 13. ¿Usar enum en Objective-C?
- 14. Delphi y enum
- 15. C# y C herencia de clases ++ entremezclando
- 16. Enum obsoleto C#
- 17. ¿Es válido emitir un `enum` a otro` enum` en [C]?
- 18. C#: Enum anti-patterns
- 19. C++ enum de char
- 20. C# Obtener Enum valores
- 21. Banderas C# Enum comparación
- 22. C++ Condensing anidado para bucles
- 23. ¿Cómo puedo definir y usar un ENUM en Objective-C?
- 24. Rendimiento de C# en el método anidado
- 25. malentendido de bloqueo anidado en C#?
- 26. Enlace de enumeraciones y enumeración clases
- 27. ¿Enum enum en JNI?
- 28. C#: Clases en carpetas
- 29. Clases inmutables en C++
- 30. Clases parciales en C#
lo ha intentado hasta ahora? Funciona ? si no, ¿qué se supone que debe hacer? – Alex
¿Te refieres a una enumeración o un enumerable? Lo anterior se parece más a algo que sería modelado por un enumerable que por una enumeración. –
Esta pregunta es antigua, pero hice una sugerencia (en el proyecto roslyn github) para implementar esta característica en las próximas versiones de C# http://github.com/dotnet/roslyn/issues/13192 – lmcarreiro