Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Function ADA-前后条件不起作用?_Function_Procedure_Ada_Preconditions_Post Conditions - Fatal编程技术网

Function ADA-前后条件不起作用?

Function ADA-前后条件不起作用?,function,procedure,ada,preconditions,post-conditions,Function,Procedure,Ada,Preconditions,Post Conditions,我试图在ada中学习我自己的前置条件和后置条件。如果使用GNAT(看起来它是jdoodle的默认设置),则需要启用断言。添加-gnata作为命令行参数 编辑: 我对jdoodle了解不多,但它似乎不能向编译器提供参数,只有在运行程序时 相反,您可以向程序中添加一个pragma断言\u策略,如下所示: procedure Tp2q4 is pragma Assertion_Policy(Check); --... 绝对值得一提的是您的操作系统、编译器版本,以及它是FSF还是Adac

我试图在ada中学习我自己的前置条件和后置条件。

如果使用GNAT(看起来它是jdoodle的默认设置),则需要启用断言。添加
-gnata
作为命令行参数

编辑: 我对jdoodle了解不多,但它似乎不能向编译器提供参数,只有在运行程序时

相反,您可以向程序中添加一个
pragma断言\u策略,如下所示:

procedure Tp2q4 is
   pragma Assertion_Policy(Check);

   --...

绝对值得一提的是您的操作系统、编译器版本,以及它是FSF还是Adacore(如果是Gnat)。显然,Ada-2012之前的编译器不支持这一点。我正在使用jdoodle在线编译器。这是一个问题吗?我还原了问题的内容。破坏它会降低它对其他人的价值。“A和B的值会根据前/后条件进行修改”-这将是一个非常糟糕的主意,即使它拼写正确。(a) 你不应该把影响结果的代码放在前置/后置条件中,正如你所看到的,(b)这确实让人很难理解发生了什么,生活已经够艰难了。现在的问题是“我正在努力学习ada中的前置和后置条件。”似乎缺少了很多东西,而且相当无用。这正常吗?(持续的缓和?)