_G 指的是
全局变量表
local _G = _G 就是声明一个同名的局部变量 _G 并把值赋为 全局变量 _G
在这个之后,在 local _G 的作用域里, _G 指的都会是局部变量
local _ 就是声明一个局部变量而已.
具体的提示是:
Message: [string "for i,s in ipairs(bl)do _G["B"..i]=Cb(i,s)C..."]:1: bad argument #1 to 'ipairs' (table expected, got nil)
Time: 09/19/12 07:03:02
Count: 4
Stack: [C]: in function `ipairs'
[string "for i,s in ipairs(bl)do _G["B"..i]=Cb(i,s)C..."]:1: in main chunk
[C]: in function `RunScript'
Interface\FrameXML\ChatFrame.lua:2131: in function `?'
Interface\FrameXML\ChatFrame.lua:4358: in function `ChatEdit_ParseText'
Interface\FrameXML\ChatFrame.lua:4052: in function `ChatEdit_SendText'
Interface\FrameXML\ChatFrame.lua:2727: in function <Interface\FrameXML\ChatFrame.lua:2720>
[C]: ?
[C]: in function `UseAction'
Interface\FrameXML\SecureTemplates.lua:275: in function `handler'
Interface\FrameXML\SecureTemplates.lua:560: in function <Interface\FrameXML\SecureTemplates.lua:508>
Locals: (*temporary) = nil
(*temporary) = "table expected, got nil"
= <function> defined =[C]:-1