Foros del Web » Programación para mayores de 30 ;) » C/C++ »

estructuras con tipos enumerados

Estas en el tema de estructuras con tipos enumerados en el foro de C/C++ en Foros del Web. Hola amigos, me surge un problema al hacer un ejercicio con una estructura con tipos enumerados. Se pide simular una partida de mus, pero la ...
  #1 (permalink)  
Antiguo 13/05/2010, 00:35
 
Fecha de Ingreso: junio-2006
Mensajes: 23
Antigüedad: 17 años, 10 meses
Puntos: 0
estructuras con tipos enumerados

Hola amigos, me surge un problema al hacer un ejercicio con una estructura con tipos enumerados.

Se pide simular una partida de mus, pero la estructura de la baraja debe ser asi.

enum Palo {
oros, copas, espadas, bastos
};

enum Numero {
as, dos, tres, cuatro, cinco, seis, siete, sota, caballo, rey
};

struct Carta
{
enum TPalo palo;
enum TNumero numero;
};

Carta cartas;

pero es aquí donde me viene el problema.

para acceder a un tipo enumerado solo basta con hacer por ejemplo

cont=as;

entonces se supone que si quiero acceder a la carta dentro de la estructura cartas debería hacer

cont=cartas.as;

Pero me dice que as no es un miembro de cartas.... la pregunta es ¿Como podria acceder a la estructura?

Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 13/05/2010, 07:11
 
Fecha de Ingreso: mayo-2010
Ubicación: Belgica
Mensajes: 17
Antigüedad: 14 años
Puntos: 2
Respuesta: estructuras con tipos enumerados

a primera vista, no seria:

cont=cartas.numero.as;

prueba eso y haber que tal
  #3 (permalink)  
Antiguo 13/05/2010, 08:51
 
Fecha de Ingreso: enero-2008
Mensajes: 229
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: estructuras con tipos enumerados

bien realmente no sería así. para acceder a un tipo de dato enumerado. supondiendo que no se encuentra dentro de una clase o namespace. la forma es la siguiente:

cont = ::as

de esta forma cont tendria el valor as.

por otra parte si quieres el valor actual del atributo número que es de tipo TNumero
entoces
cont = cartas.numero;

enum Numero {
as = 1, dos = 2, tres =3, cuatro =4, cinco =5, seis=6, siete=7, sota=8, caballo=9, rey =10
};
y es complementa equivalente a la forma forma en que tu declaraste tu enum.

debes tomar en cuenta en cont puede ser de tipo entero, o o de TNumero. ya que a cada miembro de un enum se asigna un numero por default. Tambien tu puedes asignarle un numero a cada elemento de enum. por ej.

Etiquetas: enumerados, estruccturas, tipo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:12.