C sharp - tipo enum, duda

 
Vista:

tipo enum, duda

Publicado por alex (10 intervenciones) el 14/11/2005 13:55:40
hola amigos, estoy emepzando con C# y para mi el tipo enum es nuevo.
Esta es la duda cn el sigueinte programa:

tengo este tipo enum declarado :

public enum TipoCta{Corriente,Deposito};

de una clase con el sigueinte constructor:

public CuentaBancaria(long numCta, double SaldoCta,TipoCta cnt)

y los sigueintes metodos consultores:

public long Numero()

public double Saldo()

y... aqui viene la duda como puedo consultar el tipo enum que tengo de un objeto con los atributos que arriba teneis en el constructor?????

yo habia hecho algo asi:

public string Tipo(CuentaBancaria x)
{
string tip;
if(x.TipoCta==0) tip="Corriente";
else tip="Deposito";

return tip;
}

pero en el if, no va.

Luego ese consultor seria llamado desde el metodo Ver() sigueinte:

public void Ver(CuentaBancaria nueva)
{
Console.WriteLine("Numero cuenta:{0}",nueva.Numero());
Console.WriteLine("Saldo:{0}",nueva.Saldo());
Console.WriteLine("Tipo cuenta:{0}",nueva.Tipo(nueva));
}

esto creo q si esta bien.

GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:tipo enum, duda

Publicado por Edgar (278 intervenciones) el 14/11/2005 14:27:54
Hola

El tipo enum te sirve para crear un tipo de datos con valores puntuales.. lo que tu debes hacer es crear una variable de tipo TipoCta

Esta variable solo puede tomar dos valores posibles TipoCta.Corriente y TipoCta.Deposito (esto porque asi lo definiste)

Luego, lo que haces es comparar

if(x.TipoCta==TipoCta.Corriente) tip="Corriente";
else tip="Deposito";

Espero que con esto puedas entender un poquito mas como se usa las enumeraciones

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:tipo enum, duda

Publicado por alex (10 intervenciones) el 14/11/2005 18:02:28
errores q me dice:

1.en la x del if:::::C:\Documents and Settings\Alex\Escritorio\ISG\PRACTICA2\Class1.cs(39): No se puede encontrar el tipo o el nombre de espacio de nombres 'x' (¿falta una directiva using o una referencia de ensamblado?)

2.en .TipoCta del if (x.TipoCta)C:\Documents and Settings\Alex\Escritorio\ISG\PRACTICA2\Class1.cs(39): 'TipoCta': no se puede hacer referencia a un tipo a través de una expresión; pruebe con 'Console1Practica2.CuentaBancaria.TipoCta'

3.en al llamanda al metodo Ver(nueva)::::::C:\Documents and Settings\Alex\Escritorio\ISG\PRACTICA2\Class1.cs(76): Se requiere una referencia a objeto para el campo, método o propiedad no estáticos 'Console1Practica2.CuentaBancaria.Ver(Console1Practica2.CuentaBancaria)

public string Tipo(CuentaBancaria x)
{ string tip;

if(x.TipoCta==TipoCta.Corriente) tip="Corriente";
else tip="Deposito";

return tip;

}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar