![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
#1
|
|||
|
|||
Casting
Me hace falta saber como puedo hacer un casting, tengo una clase persona, una clase estudiante y otra profesor, estas dos ultimas heredan de persona y ahora me hace falta meter los objetos en una lista de tipo persona y resulta que cuando intento acceder a los metodos de los hijos no me deja, como casteo para si es del tipo estudiante entre a un metodo y si es de tipo profesor entre a otro metodo
Saludos |
#3
|
||||
|
||||
Hola.
Para algunos casos en particular, el uso del operador is puede dar resultados no esperados, ya que este devuelve verdadero tanto si el objeto pertenece a la clase, como si es desciende de ella. Por ejemplo: Que muestra el mensaje 'TPersona' cuando el objeto creado es un TAlumno. O también: Donde la salida es 'TAlumno' y 'TPersona'. En casos que pueden prestarse a confusiones, una buena alternativa es usar la función ClassType que nos da dinámicamente la referencia de clase del objeto:
Un saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 16-02-2011 a las 08:25:12. |
#4
|
||||
|
||||
Cita:
Esto no quiere decir que no puedas efectuar operaciones de acuerdo a la clase específica. Pero de ello se encarga el polimorfismo. Si tu clase Persona tiene un método (virtual) HazEsto, las clases derivadas (Estudiante, Profesor, etc.) pueden redefinir dicho método para adaptarse a sus necesidades específicas. Entonces, puedes recorrer la lista en forma genérica:
con la seguridad de que, dependiendo del objeto, se llamará al método correcto. // Saludos |
#5
|
|||
|
|||
Gracias
Gracias por la ayuda!!!!!!!!!
|
#6
|
|||
|
|||
Error
Me da error al llamar al metodo del hijo!!!! Última edición por ecfisa fecha: 16-02-2011 a las 20:32:03. Razón: ETIQUETAS DELPHI |
#7
|
|||
|
|||
Resuelto
Ya se arreglo gracias a ustedes
Saludos |
#8
|
|||
|
|||
respuesta
Lo que dice roman es muy util pero no para mi caso ya que no tiene sentido creo yo tener en una clase Estudiante un metodo getsueldo que solo este metodo es de los profesores. Saludos Última edición por ecfisa fecha: 16-02-2011 a las 20:32:51. Razón: ETIQUETAS DELPHI |
#9
|
||||
|
||||
Cita:
![]() // Saludos |
![]() |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
problema con casting/tipo money en postgreSQL | viaraSOFT.com | SQL | 4 | 16-02-2011 17:41:54 |
Cómo prescindir del "casting" de tipos | Luis_264 | Varios | 8 | 03-01-2009 22:01:03 |
casting Composite Report: error al imprimir | MsYo | Impresión | 2 | 24-07-2006 12:29:09 |
Def. de constantes - Casting | Mariana | OOP | 3 | 21-10-2005 19:24:23 |
Casting de TComponent en TEdit | jamonete2 | Varios | 2 | 12-06-2005 15:56:19 |
![]() |
|