Show/Hide Toolbars

XSharp

用途

THROW 语句会引发运行时异常。

语法

THROW [expression]

参数

expression 要抛出的可选表达式。

备注

THROW 会抛出运行时异常,导致执行分支到 TRY 结构中最近的 CATCH FINALLY 块。如果执行不在 TRY 结构中,应用程序将终止。

指定的表达式将传递给 CATCH 语句(如果有),并且必须是 System.Exception 类型或由其派生的类。更多信息请参阅 TRY-CATCH-FINALLY。

CATCH 代码块中使用 THROW 语句而不带任何参数,将重新抛出异常,并将其原封不动地传递给下一个最高的 TRY-CATCH 代码块。

示例

USING System.IO
FUNCTION ReadFile( filename AS STRING ) AS STRING
  LOCAL s AS STRING
  TRY
     s := File.ReadAllText( filename )
  CATCH e AS DirectoryNotFoundException
     ? "未找到目录", e
  CATCH e AS IOException
     ? "发生 IO 异常", e
  CATCH e AS UnauthorizedAccessException
     ? "访问被拒绝", e
  CATCH
     ? "其他例外情况"
    // 将错误升级到下一个 TRY-CATCH
    THROW
  FINALLY
     ? "全部完成!"
  END TRY
  RETURN s

 

参见

 

TRY-CATCH-FINALLY