FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Ejecucion por defecto...
Hola amigos. Lo que os voy a preguntar no se si podrá hacerse con cualquier lenguaje orientado a objetos, no obstante mi interés radica en saber si es posible hacerlo con delphi. Supongamos que tenemos una clase definida como sigue:
TMiClase = class private ... ... error : Boolean ; public ... ... end ; El estado de la variable ERROR establecerá si se ha producido un error al ejecutar cualquier método de la clase. Logicamente, al iniciar la ejecucion de un método debemos establecer el valor de dicha variable a False. Me gustaría saber si puedo ahorrarme esto, es decir, si hay alguna forma de hacer, que cada vez que se invoque un método de la clase, automáticamente se ponga a False dicha variable sin tener que incluir el código para ello dentro del algoritmo que resuelve al método llamado. Espero haberme explicado con claridad. Gracias de antemano. Un saludo a todos.
__________________
craven |
#2
|
||||
|
||||
La verdad no conozco ningún lenguaje que permita hacer eso... y delphi tampoco.
Si queres inicializar una variable a tu gusto, debes hacerlo explicitamente. El constructor de la clase si inicializa todas las variables a 0, o false; sin embargo es solamente al momento de inicializar la instancia. Ahora, si debes inicializar muchas variables cada vez que llamés a un método, podes hacer un método que se llame InicializaVariables, o algo así, y llamarlo desde todos los demás Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#3
|
|||
|
|||
No se que pretendes con ello, pero lo que generalmente se hace es lanzar excepciones...
No se si estarás intentando esconder, con esa variable, la antigua forma de devolver un código de error... (como hacen funciones de la API de windows o las antigüas del Pascal...) |
|
|
|