首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VDM++语言分号

VDM++语言分号
EN

Stack Overflow用户
提问于 2013-03-23 03:37:20
回答 1查看 187关注 0票数 1

我正在读一本VDM++语言手册。我的问题是,在某些情况下,他在语句的末尾使用";“,而在同一语句中的某个地方,他没有使用";”。

下面是示例

代码语言:javascript
复制
public Top : () ==> Elem
Top() ==
return (hd stack);


if test
then OpCall()
else return FunCall()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-23 18:01:47

分号在VDM中是分隔符,而不是Java和C中的终止符。因此,您需要使用分号,其中两个内容是顺序的,例如两个定义或两个语句。但是,如果“块”中只有一样东西,则不需要分隔符。

因此,如果后面有另一个定义,则第一个示例可能需要尾随分号,但如果"Top“是类/模块中的最后一个定义,则不需要。

第二个示例在OpCall()之后不需要分号,因为它是"then“子句中的单个语句。如果if/then/else后面跟着另一个语句,那么在FunCall()之后可能需要一个分号,而不是其他语句。

话虽如此,VDMJ解析器是容错的,并将允许在某些地方使用虚假的分号,即使它们严格地不是必需的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15578521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档