加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Lua分号公约

发布时间:2020-12-15 00:27:02 所属栏目:大数据 来源:网络整理
导读:我想知道在Lua中是否有使用分号的一般惯例,如果是,我们应该在哪里/为什么要使用它们?我来自编程背景,所以用分号结束语句似乎是直观正确的.然而,我担心为什么它们是普遍接受的分号在其他编程语言中的“可选择”.也许有一些好处吗? 例如:从lua programming
我想知道在Lua中是否有使用分号的一般惯例,如果是,我们应该在哪里/为什么要使用它们?我来自编程背景,所以用分号结束语句似乎是直观正确的.然而,我担心为什么它们是普遍接受的分号在其他编程语言中的“可选择”.也许有一些好处吗?

例如:从lua programming guide开始,这些都是可以接受的,等同的和语法准确的:

a = 1
b = a*2

a = 1;
b = a*2;

a = 1 ; b = a*2

a = 1   b = a*2    -- ugly,but valid

作者还提到:通常,我只使用分号来分隔两行或更多语句,写在同一行,但这只是一个惯例.

这是卢卡社区普遍接受的还是还有另外一种最喜欢的方式?还是像我个人喜好一样简单?

解决方法

Lua中的分号一般只在一行中写多条语句时才需要.

例如:

local a,b=1,2; print(a+b)

或者写成:

local a,2
print(a+b)

在我头顶,我不记得在Lua的任何其他时间,我不得不使用分号.

编辑:查看lua 5.2参考我看到另一个常见的地方,你需要使用分号避免歧义 – 你有一个简单的语句后跟一个函数调用或括号来组合一个复合语句.这里是位于here的手动示例:

Function calls and assignments can start with an open parenthesis. This 
possibility leads to an ambiguity in the Lua grammar. Consider the 
following fragment:

a = b + c
(print or io.write)('done')

The grammar could see it in two ways:

a = b + c(print or io.write)('done')

a = b + c; (print or io.write)('done')

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读