以下两个OCL语句对某些函数上下文等效吗?
post: if a > 0 then b < c
post: b < c implies a > 0
No.
在OCL中,结构为if
…then
……else
……endif
,所以你的第一个例子只能是'等效'到一个不同的语法错误。
使用if
结构的逻辑操作是可重写的,但是需要相当小心地确保输入为空或无效的可能性不会破坏if
条件项,因为Boolean
必须是2值的。