断言

assert 表达式是一种可用于测试表达式的调试功能。 在调试模式中遇到故障时,断言将生成一个系统错误对话框。

语法

assert condition

备注

assert 表达式的类型为 bool -> unit

assert 函数解析为 Debug.Assert。 这意味着其行为与直接调用 Debug.Assert 相同。

仅在调试模式下编译时启用断言检查;即,如果定义了常量 DEBUG。 在项目系统中,默认情况下,DEBUG 常量在调试配置中定义,但不在发布配置中定义。

无法使用 F# 异常处理捕获断言失败错误。

示例

以下代码示例阐释了 assert 表达式的用法。

let subtractUnsigned (x : uint32) (y : uint32) =
    assert (x > y)
    let z = x - y
    z
// This code does not generate an assertion failure.
let result1 = subtractUnsigned 2u 1u
// This code generates an assertion failure.
let result2 = subtractUnsigned 1u 2u

另请参阅