Ver Mensaje Individual
  #5  
Antiguo 22-11-2005
Jome Jome is offline
Registrado
 
Registrado: nov 2005
Posts: 8
Reputación: 0
Jome Va por buen camino
Cita:
Empezado por Lepe
¿No te sería más comodo derivar de TObjectList?, que maneja una lista de objetos por sí mismo.

El string lo meterías dentro del objeto, y listo.

Solo tendrías que hacer un par de forzados de tipos para tener una lista de objetos que te devuelvan el TMiObjeto en lugar del típico TObject.

saludos
La decisión de usar TStringList ha sido porque necesito poder buscar entre los objetos mediante el campo Abbrev. Entonces, me he apoyado en la clase TStringList porque posee el método Find (si está ordenado) ó IndexOf (si no está ordenado) y así no tengo que implementarlo yo.
Es cierto que con un TStringList desperdicio algo de memoria,ya que el campo Abbrev lo contiene por duplicado: una vez como Value y otra dentro del propio MiObjeto.

La clase TObjectList también posee el método IndexOf pero, salvo que me corrijáis, creo que no lo puedo aprovechar para buscar entre los objetos según un determinado campo (corregidme si me equivoco porque de esto no estoy seguro).

Es cierto que mediante la clase TObjectList me puedo evitar tener que destruir cada uno de los objetos, pero dentro del uso que le voy a dar a esta lista no se encuentra el de poder borrar algún objeto, simplemente va a ser una lista fija que contendrá objetos provenientes de un archivo XML, y a la que accederé de vez en cuando (se puede decir que una vez cargada, será de sólo lectura).

Precisamente por ser de sólo lectura, en lugar de heredar de TStringList había pensado en encapsular el TStringList, y publicar (wrappear -ó como se diga- ) sólo el método Find (ó IndexOf) ya que es el único que voy a emplear. Pero bueno, el usuario delphi.com.ar me ha dado a entender que heredar me aportaría más flexibilidad (y quizás más adelante me dé cuenta de que la necesito) y me ha convencido.
Responder Con Cita