Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
No, usar un array en lugar de un enum es un mal diseño.
Ejemplo: Imagina que tienes un valor de cadena. Y la tarea es averiguar si esta cadena es igual/contiene en ella uno de los nombres de los elementos del enum (EnumToString()).
¿Cómo resolverías esto?
¿Puede proporcionar una situación real en la que se necesite tal cosa? Enum son sólo constantes, ¿por qué quieres identificar una cadena dentro de los elementos?
Si quieres construir una estructura de cobertura.
Pero entonces simplemente comparo todo para descubrir el valor real.
¿Puede proporcionar una situación real en la que se necesite algo así? Los Enum son sólo constantes, ¿por qué quieres identificar una cadena dentro de los elementos?
Mi pregunta era sólo un ejemplo. El iniciador del tema describió otro. Entiendo que no son lo suficientemente "real" para usted y todo el mundo puede utilizar soluciones, pero esto no hace que estas tareas no son reales para la gente que está resolviendo.
Y todavía estamos atascados aquí... Sólo se puede encontrar una solución para un problema real. ¿Sabes cuál es el verdadero problema del PO? No lo sé.
Conozco MUCHAS situaciones reales en las que esto sería útil. Es por esto que UTILIZO el enfoque con arrays, porque no hay otra manera.
Ejemplo: Usted tiene un enum/lista de algo (digamos opciones de lenguaje GUI para su programa), y quiere construir botones de radio para ello, para que el usuario elija. Usted NO QUIERE cambiar el código de los botones más tarde, si cambia el número de elementos en su enum.
Y necesitas recuperar ese valor del enum desde el nombre del botón para aplicarlo a tu programa. Usted NO QUIERE escribir código para CADA elemento de su enum, usted quiere una solución simple dentro de un ciclo
Esto puede aplicarse no sólo a los lenguajes, sino a MUCHAS otras cosas:
Hay muchas maneras de hacer las mismas cosas.
Bueno, yo conozco al menos una, porque la estoy usando.
Y eso no hace que la función de la que hablamos sea inútil. Se puede clavar un clavo con una piedra, pero eso no significa que haya que hacerlo siempre.
Conozco MUCHAS situaciones reales en las que esto sería útil. Por eso UTILIZO el enfoque con arrays, porque no hay otra manera.
1. Usted tiene un enum/lista de algo (digamos opciones de lenguaje GUI para su programa), y quiere construir botones de radio para ello, para que el usuario elija. Usted NO QUIERE cambiar el código de los botones más tarde, si cambia el número de elementos en su enum.
Y necesitas recuperar ese valor del enum desde el nombre del botón para aplicar tu programa. Usted NO QUIERE escribir código para CADA elemento de su enum, usted quiere una solución simple dentro de un ciclo
Esto se puede aplicar no sólo a los lenguajes, sino a MUCHAS otras cosas:
Lo sé Andrey. Tu ejemplo necesita una solución dinámica, así que no usas enum sino array. Si quieres usar enum (estático) para algo que es dinámico (tu ejemplo), es un mal diseño. Me parece que estamos diciendo lo mismo.
No podemos ayudar más al OP ya que no dice el motivo por el que necesita el bucle.
Bueno, yo conozco al menos una, porque la estoy usando.
Y eso no hace que la función de la que hablamos sea inútil. Puedes clavar un clavo con una piedra, pero eso no significa que debas hacerlo siempre.
Incluso el lenguaje Java existió sin ningún tipo de enum durante mucho tiempo, y como Java utiliza arrays puros raramente, había muchas otras formas OO de cómo iterar una lista de valores. Yo no lo llamaría una piedra y un clavo.