Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-01-2006
adpa adpa is offline
Miembro
 
Registrado: dic 2005
Posts: 22
Poder: 0
adpa Va por buen camino
Problemas con herencia

Hola tod@s:

Tengo una lista genérica:
Código Delphi [-]
cLista = class(tList)
                 private
                        Incremento     : Integer; { número de elementos a incrementar el array }
                        Elementos      : Integer;
                        Primero        : array of tObject;  { lista sobre array dinámico }
                        procedure   IncrementarArray( Cantidad : integer);
                        function    Obtener ( Posicion : integer): tObject;
                        procedure   Actualizar ( Posicion : integer; Nuevo:tObject);
                  public
                       constructor Create (Incremento : Integer);
                       destructor  Destroy;override;
                       procedure   Insertar( Informacion: tObject);
                       procedure   Eliminar( Posicion : integer);
                       function    EsVacia : boolean;
                       function    Longitud : Integer;
                       property    Objetos[ Indice : Integer]: tObject read Obtener write Actualizar;
                end;

y otra que hereda de ella
cListaConsumidores = class (cLista)

y cuando intento hacer la siguiente operación
consumidor:=self.salaOcio.Objetos[1];
----Me dice que no se puede convertir de tObject a consumidor;

cConsumidor = CLASS(TObserver)

TObserver = class
public
procedure Update(const Subject: TObject); virtual; abstract;
end;

He probado ha hacer que TObserver herede de tObject pero me da el mismo error.

Hecharme una mano. Gracias

Última edición por jachguate fecha: 24-01-2006 a las 01:57:41.
Responder Con Cita
  #2  
Antiguo 24-01-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Hola. He editado tu mensaje para añadir la etiqueta delphi, que es de uso obligatorio al publicar trozos de código. Si no sabes como se usa, referite a la ayuda de la etiqueta code (vínculo en mi firma) o editá tu mensaje para ver lo que yo he añadido.

Con respecto de tu pregunta, a mi no me ha quedado claro en que parte del código es donde decís que te da problema, ni si es en tiempo de ejecución o de diseño.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 24-01-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Código Delphi [-]
consumidor := cConsumidor(self.salaOcio.Objetos[1]);

Por cierto, te recomendaría ajustarte a los estándares: las clases y otro tipos de datos se prefijan con T, no con C.

// Saludos
Responder Con Cita
  #4  
Antiguo 24-01-2006
adpa adpa is offline
Miembro
 
Registrado: dic 2005
Posts: 22
Poder: 0
adpa Va por buen camino
Hola, ya he tomado nota como se pone lo del código delphi.
Román una pregunta cConsumidor(....) hago una conversión de tipo verdad?. ¿Para ello tiene que heredar de tObject.?

Muchas Gracias.
Responder Con Cita
  #5  
Antiguo 24-01-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
En delphi, todas las clases heredan de TObject.
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #6  
Antiguo 05-02-2006
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Smile

¡Hola a todos!

Adpa: Te invito a que nos plantees tu caso diciéndonos cuál es el objetivo de las clases que has definido y dándonos otros detalles de contexto. Encuentro un tanto rebuscado el código que has expuesto.

Gracias.

Al González.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Delphi no tiene Herencia? Esau OOP 32 04-06-2011 19:15:18
Problemas con instalacion y archivo idr20009.dll allende Varios 0 19-01-2006 15:46:33
Problemas de Herencia Migpal OOP 1 04-11-2005 22:05:48
Herencia visual con TFrames y otros asuntos walrus OOP 6 19-09-2004 02:38:12
Herencia en Delphi 8 murci OOP 2 08-03-2004 09:24:29


La franja horaria es GMT +2. Ahora son las 11:04:21.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi