【发布时间】:2022-10-29 16:46:32
【问题描述】:
在阅读Lua manual 时,我遇到了这一部分:
函数调用和赋值都可以以左括号开头。这种可能性导致 Lua 的语法有歧义。考虑以下片段:
a = b + c
(print or io.write)('done')
语法可以通过两种方式看到这个片段:
a = b + c(print or io.write)('done')
a = b + c; (print or io.write)('done')
从示例中我可以理解函数调用可以以左括号开头:
a = b + c(print or io.write)('done')
^
但即使思考了几个小时,我也无法弄清楚作业如何以左括号开头,以及它与上述示例(第二行)有何关系。
谁能给我解释清楚,用例子说明那句话的意思?
【问题讨论】: