Lua中隐式和显式io命名空间函数之间的区别

时间:2014-04-04 10:08:55

标签: lua

lua中隐式函数和显式函数之间的确切区别是什么?我在阅读Lua中的文件操作时遇到了这些术语。隐式函数前面有io.,如io.read(),而显式函数看起来像file:read()。我对这本书的区别一无所知说

  

两者之间的区别在于隐式函数适用于   默认文件由io命名空间提供,而显式   函数使用前一个提供的文件句柄   操作,例如io.open

请问更好的解释?

1 个答案:

答案 0 :(得分:3)

io.read从默认输入文件中读取。

默认输入文件为stdin,但您可以通过调用io.input来更改它。

您还可以使用io.open显式打开文件,并在方法调用中使用返回的句柄,例如f:read()

io.read()相当于io.input():read()

另见http://www.lua.org/manual/5.2/manual.html#6.8