¡Hola, Invitado! (Iniciar sesiónRegístrate)
Hora: 29 Apr 2024, 19:59

Una pequeña duda sobre programación

22 Jul 2015, 09:28
Mensaje: #11

RE: Una pequeña duda sobre programación

El código que puso 7l6j1A es exactamente el mismo que el mío pero cambiando los "caso of" por "if then", sin embargo he leído que los "case of" suelen ser más rápidos debido a las optimizaciones del compilador, y al menos a mí me son más legibles que varios "if then" anidados. Aunque siendo solo dos, tampoco es que se vaya a notar nada.

Kumicho, lo de la variables imaginaba que sería como lo has puesto, pero te lo he preguntado por si acaso había otra forma. Aunque no entiendo por qué es mejor así. Lo que comentas sería:
Cita:LabelVisible := Form1.xdeltaFileNamesDestino_Label.Visible; <- se añade a la variable el valor de la propiedad
if LabelVisible = True then <- se comprueba el contenido de la variable
// se hace algo

Y lo que yo tengo puesto sería:
// se ahorra la variable
case Form1.xdeltaFileNamesDestino_Label.Visible of <- se comprueba el contenido de la variable
// se hace algo

¿No viene a ser lo mismo? ¿O es que se tarda más en comprobar el valor de la propiedad de un control que el contenido de una variable?
22 Jul 2015, 13:56
Mensaje: #12

RE: Una pequeña duda sobre programación

Obtener el valor de una variable no es más que leer una posición en la memoria. Para obtener el valor de una propiedad se ejecuta una funcion.

y sí, los case se optimizan mejor que múltiples if, pero en tu caso hace un solo comprobación (Form1.xdeltaFileNamesDestino_Label.Visible es true o false). Dudo mucho que haya una diferencia en el tiempo de ejecución, así que puedes escribirlo como más legible te parece. Para mi las condicionales en Delphi son como los de VB: horribles para leer.


Usuario(s) navegando en este tema: 1 invitado(s)