Lua 编程 – 勘误表
- 第 31 页
-
write(page)
应为 io.write(page)
- 第 86 页,在函数
rect
中
-
bottom <= x and x <= up
应为 bottom <= y and y <= up
- 第 116 页(以及其他几处)
-
signal
应为 sign
- 第 135 页,练习题 14.2 由 Colin Barry 报告
-
当队列为空时,
last
应返回 -1,而不是 0。
- 第 142 页,清单 15.1
- 函数
quote
有误。(特别是,它对 "]]" 给出了错误的结果)。一种可能的修复方法是在 string.gmatch
中使用模式 "]=*"
。
- 第 162 页
-
guides require is is a little different 应为 guides require is a little different
- 第 163 页,顶部
-
If both are unefined 应为 If both are undefined
- 第 196 页,练习题 20.4
-
file as array 应删除
- 第 13 页,第二行 由 Martin B�ttner 报告
-
\x\hh
应为 \xhh
- 第 35 页,第五行 由 Tony Booer 报告
-
"basic Lua library>" 应为 "basic Lua library."
- 第 37 页,第一个代码片段 由 Lorenzo Donati 报告
-
else if
应为 elseif
- 第 59 页,练习题 6.1 由 Jan Sedl�k 报告
-
问题描述不太准确。它应如下所示
“编写一个函数integral
,它接收一个函数f
并返回其定积分函数。此返回函数在给定两个值a
和b
时,返回f
从a
到b
的积分近似值”
- 第 66 页,第二段
-
有此注释
“如前所述,Lua 中不常见链表,但有时我们需要它们。”
但是,本书在此之前并未提及链表。
- 第 99 页,第 10.2 节中的第一个代码片段 Tomas Guisasola 报告
-
allwords
应为 allwords()
(函数调用)
- 第 131 页,倒数第二行 Martin B�ttner 报告
-
__leq
应为 __le
- 第 147 页 Peter Kazmier 报告
-
“我们可以用它加载” 应为 “我们可以用它加载”
- 第 152 页,第三个代码片段 Claudio Morgado 报告
-
local f = mod.foo
应为 local f = m.foo
- 第 158 页,清单 15.2 Tony Booer 报告
-
local i = complex.new(0, 1)
应为 local i = new(0, 1)
- 第 177 页,第 17.2 节标题
-
故意使用单词“Memoize”(而不是“Memorize”),以指代术语“Memoization”(意为“Memorization”,但已建立)。
- 第 183 页,最后一行 Pete Hollobon 报告
-
“将其锚定” 应为 “将其锚定”
- 第 184 页,第一段 Pete Hollobon 报告
-
“使终结器创建” 应为 “使终结器创建”
- 第 192 页,最后一个代码片段 Martin B�ttner 报告
-
if bit32.or(a, b) == bit32.or(-1) then
应为
if bit32.bor(a, b) == bit32.bor(-1) then
- 第 198 页,练习 20.1 Patrick 报告
-
print 语句中缺少一个闭合括号。
- 第 213 页,在函数
unexpandTabs
中 Tomas Guisasola 报告
-
s = expandTabs(s)
应为 s = expandTabs(s, tab)
- 第 217 页,第四段 Ana L�cia de Moura 报告
-
“多行序列” 应为 “多字节序列”
- 第 225 页,第六段 Lorenzo Donati 报告
-
与书中所述相反,
io.lines
无法将文件句柄作为其第一个参数。
- 第 226 页,清单 22.1 Lorenzo Donati 报告
-
应删除以下行,因为它无用
local f = io.input(arg[1]) -- 打开输入文件
- 第 226 页,最后一段
-
观察 "只要模式不包含零字节" 不适用于 Lua 5.2。Lua 5.2 可以毫无问题地处理模式中的零字节。
- 第 234 页,最后一段代码片段 Daniele Kazan 报告
-
loadstring
应为 load
- 第 282 页,倒数第三段 Martin B�ttner 报告
-
lua_pcall
应为 lua_call
- 第 292 页,练习 28.4 和 28.6 Daniele Kazan 报告
-
"tranliterate" 应为 "transliterate"
- 第 323 页,第 31.2 节 Andrew Starks 报告
-
本节中描述的库
lproc
的代码中有一些错误:缺少一些 #include
以及使用了两个已弃用的实体 luaL_reg
和 luaL_register
。有关完整示例,请参见 更正后的代码。
无可用的勘误表。
有关印刷版的勘误表,请参见 此页面。
勘误表中列出的所有更正已在 在线版本 中进行。