- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在学习如何编程,但我无法理解的一件事是前提条件和 后置条件 .
是在调用被认为是 的函数之前的 if 语句前提条件 ,或者在大多数语言中是否有单独的更有效的方法?
我也在努力寻找 的任何例子前提条件我可以用我目前的编程知识理解,如果有人能证明一个简单的,那么我真的很感激(任何语言都可以)
最佳答案
在这个 c++'s paper 中有很好的说明
A precondition is a predicate that should hold upon entry into a function. It expresses a function's expectation on its arguments and/or the state of objects that may be used by the function.
A postcondition is a predicate that should hold upon exit from a function. It expresses the conditions that a function should ensure for the return value and/or the state of objects that may be used by the function.
long square_root(long x)
in
{
assert(x >= 0);
}
out (result)
{
assert(result ^^ 2 <= x && (result + 1) ^^ 2 > x);
}
do
{
return cast(long)std.math.sqrt(cast(real)x);
}
in
块,
后置条件 在
out
堵塞。
9
进入函数。 live demo
-1
进入函数。 live demo
core.exception.AssertError@prog.d(8): Assertion failure
do
中的逻辑引起的阻止,如返回 square
而不是 square-root
,然后,后置条件 将工作: live demo
core.exception.AssertError@prog.d(13): Assertion failure
关于programming-languages - 什么是前置条件和后置条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35303332/
我是编程和这个网站的新手,我正在研究 UML 设计的一些术语,我正在寻找基本的回应。我查了每个术语的定义,但我仍然试图掌握这个概念。 最佳答案 前提条件是在调用用例之前必须为真的东西。例如用例“在网站
我有以下变更集: 我想检查唯一约束是否已经存在: select distinct CONSTRAINT_NAME from information_schema.TABLE_C
我是一名优秀的程序员,十分优秀!