[C con Clase] problema ENUMERADOS
tikitita
guanxita en gmail.com
Mar Feb 20 01:41:52 CET 2007
Eiiiiiiiiiiii ke buenooooooo ya no me salta,,, pero ahora me da error el
constructor :(
#include <iostream>
#include <cstdlib>
#include "jugadores.h"
using namespace std;
jugadores::jugadores (char *nombre){
nombre=nombre;
puntoscartas=0;
}
void jugadores::pedirapuesta (unsigned int apuestajugador) {
Cartera=apuestajugador;
}
//Función que incorpora la ganancia a lo que tenía el jugador.
void jugadores::ganarapuesta (unsigned int apuestajugador) {
apuestecilla.sumarapuesta(cartera);
}
//Función que resta la ganancia a lo que tenía el jugador
void jugadores::perderapuesta (unsigned int apuestajugador) {
apuestecilla.restarapuesta(cartera);
}
unsigned int jugadores::contarcartas (unsigned int cartas) {
puntoscartas= puntoscartas+cartas;
return puntoscartas;
}
unsigned int jugadores::puntoscartas (enum valor) {
switch (valor) {
case 1: return 1;
break;
case 2: return 2;
break;
case 3: return 3;
break;
case 4: return 4;
break;
case 5: return 5;
break;
case 6: return 6;
break;
case 7: return 7;
break;
case 8: return 8;
break;
case 9: return 9;
break;
case 10: return 10;
break;
case j: return 10;
break;
case q: return 10;
break;
case k: return 10;
break;
}
}
El día 20/02/07, tikitita <guanxita en gmail.com> escribió:
>
> muchas gracias steven, lo corregire, no sabia lo de los enumerados, en ada
> la movida de los enumerados es distinta y creia ke seria igual en c++, como
> ves tengo un buen lio en la cabeza.
>
> El día 20/02/07, Steven Davidson <steven en conclase.net> escribió:
> >
> > Hola Tikitita,
> >
> > El pasado 2007-02-19 23:33:07, tikitita escribió:
> >
> > t> hola chicos, estoy haciendo un blackjack y me da problemas la
> > declaracion de un enumerado, a la hora de compilar me da error de constant,
> > he probado a declararlo de mil maneras... os pego aki el codigo a ver si
> > alguien puede ayudarme
> >
> > Veamos el código.
> >
> > t> #ifndef jugadoresH
> >
> > Te hace falta definir esta constante simbólica. El esquema es el
> > siguiente:
> >
> > #ifndef jugadoresH
> > #define jugadoresH
> >
> > // El contenido del fichero de cabecera
> >
> > #endif
> >
> > t> #include "apuesta.h"
> > t> enum valor {1,2,3,4,5,6,7,8,9,10,j,q,k};/
> >
> > Esto no es correcto. Un tipo enumerado se comporta como una lista de
> > constantes enteros. Dicho esto, estamos definiendo nombres para las
> > constantes. Como bien sabrás, los nombres en C/C++ pueden comenzar con un
> > subrayado '_' o con letras. Por lo tanto, no puedes crear nombres con
> > números. Lo que sí podrías hacer es usar nombres descriptivos para
> > representar cada valor. Por ejemplo,
> >
> > enum valor { A=1, DOS, TRES, CUATRO, CINCO, SEIS, SIETE, OCHO, NUEVE,
> > DIEZ, J, Q, K };
> >
> > Supongo que tb podrías intentar conservar los números arábigos en los
> > nombres. Por ejemplo, puedes hacer lo siguiente,
> >
> > enum valor { A=1, _2, _3, _4, _5, _6, _7, _8, _9, _10, J, Q, K };
> >
> > t> /declaracion de enumerados
> > t> class jugadores {
> > t> private:
> > t>
> > t> char *nombre;
> > t> unsigned int puntoscartas;
> > t> valor V;//variable del enumerado
> > t> apuesta apuestecilla;//tipo_variable
> > t> unsigned int Cartera;//variable donde vamos a guardar el dinero
> > del jugador
> > t>
> > t> unsigned int puntoscartas(enum valor);
> > t>
> > t> public:
> > t>
> > t> jugadores ();
> > t>
> > t> void pedirapuesta (unsigned int apuestajugador);
> > t> unsigned int contarcartas (unsigned int cartas);
> > t> void ganarapuesta(unsigned int apuestajugador);
> > t> void perderapuesta(unsigned int apuestajugador);
> > t>
> > t> };
> > t> #endif
> >
> >
> > Espero que esto te ayude.
> >
> > Steven
> > _______________________________________________
> > Lista de correo Cconclase Cconclase en listas.conclase.net
> > http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> >
> > Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
> >
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20070220/1e572473/attachment.html>
Más información sobre la lista de distribución Cconclase