CATCH
SUB Function ( ... )
...
CATCH
...
END
Esta instrucción indica el comienzo del código de gestión de errores de una función o procedimiento.
Cada zona "catch" se ejecuta cuando ha ocurrido un error entre el principio de la función y su final. El error puede ser disparado por la misma función, o por otra función que haya sido llamada durante su ejecución, siempre que la función llamada no tenga su propia zona "catch": cuanto más cercana al error es la zona "catch", más prioridad tiene.
Si un error se dispara durante la ejecución de la zona "catch", se propaga normalmente. ¡Esta zona no cubre sus propios errores!
Si existe una zona "finally" en la función, debe preceder a la zona "catch". Véase
FINALLY para más detalles.
Examples
' Mostrar un archivo en la consola
SUB PrintFile(FileName AS STRING)
DIM hFile AS File
DIM sLig AS STRING
OPEN FileName FOR READ AS #hFile
WHILE NOT EOF(hFile)
LINE INPUT #hFile, sLig
PRINT sLig
WEND
FINALLY ' Siempre se ejecuta, incluso si hay error
CLOSE #hFile
CATCH ' Se ejecuta sólo si hay error
PRINT "Imposible mostrar el archivo "; FileName
END
Véase también