Propiedad con índice

14/05/2004 - 18:36 por Alberto | Informe spam
Tengo una clase "Alumno" y quiero crear una propiedad llamada "Nota" pero
quiero acceder a ella usando índices del siguiente modo:

miAlumno.nota[3] = 8;

¿Me podeis dar alguna ayuda de cómo hacerlo?
Gracias
 

Leer las respuestas

#1 Octavio Hernandez
14/05/2004 - 19:02 | Informe spam
Alberto,

Crea una clase auxiliar Notas, a la que le podrás asociarle un indizador.
public class Notas {

private int[] nota = new int[5];

public int this[int i]

{

get

{

if (i < 0 || i > 4)

throw new ApplicationException("Asignatura fuera de rango");

return nota[i];

}

set

{

if (i < 0 || i > 4)

throw new ApplicationException("Asignatura fuera de rango");

nota[i] = value;

}

}

}

public class Alumno

{

private string nombre = null;

private Notas notas = new Notas();

//

public string Nombre { get { return nombre; } set { nombre = value; } }

public Notas Notas { get { return notas; } set { notas = value; } }

}

class EnvioCorreo

{

static void Main(string[] args)

{

Alumno pepe = new Alumno();

pepe.Nombre = "Pepe";

pepe.Notas[0] = 5;

pepe.Notas[1] = 2;

Console.WriteLine(pepe.Notas[0]);

Console.ReadLine();

}

}

"Alberto" escribió en el mensaje
news:%

Tengo una clase "Alumno" y quiero crear una propiedad llamada "Nota" pero
quiero acceder a ella usando índices del siguiente modo:

miAlumno.nota[3] = 8;

¿Me podeis dar alguna ayuda de cómo hacerlo?
Gracias


Preguntas similares