En base a consulta:
Ejemplo para crear una estructura de datos (similar a C) usando enumeraciones.
Definir estructura de datos:enum Persona
{
Nombre[20], // Valor de constante = 0 (pero define un incremento de 20 para sucesor).
Edad, // Valor de constante = 21
Float: Altura // Valor de constante = 22
}
Crear en memoriaDefinir un
Empleado con valores constantes de Nombre=Dimitri, Edad=25, Altura=1.9:
new Empleado[Persona] = { "Dimitri", 25, 1.9 }
Nota: El nombre de la enum "
Persona", es otra constante con el valor de la ultima constante del
enum + 1, es decir en este caso el valor es 23. Por lo tanto se crea indirectamente un array con 23 elementos con el nombre
Empleado.
Acceso:if(Empleado[Edad] > 65)
{
nLcdPrintf(0, 1, LCD_NONE, "Jubilar a %s", Empleado[Nombre])
}
En el código anterior, si la
Edad de
Empleado es mayor a 65 años, se imprimirá un cartel en
VirtualHMI con el mensaje "
Jubilar a Dimitri".
Como se puede ver, se accede al Array "
Empleado" utilizando las constantes definidas en el "
Enum" (Nombre, Edad, Altura), representando
campos de datos en el mismo. Esto permite estructurar datos en el array, similar a una estructura del lenguaje C.
En el ejemplo adjunto para
StxLadder, se explica y añade mas información del concepto de estructura de datos con Enum.
Se definen 5 personas y se muestra información de las mismas en
VirtualHMI.