lua advanced function
来源:互联网 发布:广告软件 编辑:程序博客网 时间:2024/05/17 00:14
接受函数作为参数的函数成为”高阶函数“
network = {
{name= "gramma", IP = "210.26.30.34"},
{name= "arrial", IP = "210.26.30.35"},
{name= "lua", IP = "210.26.30.36"},
{name= "cplus", IP = "210.26.30.37"},
{name= "dephi", IP = "210.26.30.38"},
}
以name字段来对table排序
table.sort(network, function (a,b) (a.name > b.name) end)
function derivative (f, delta)
delta = delta or 1e-4
return function (x)
return (f(x + delta) - f(x))/delta
end
end
闭合函数Closure
function newCounter()
local i = 0
return function ()
i = i + 1
return i
end
end
c1 = newCounter()
print(c1()) -->1
print(c1()) -->2
非全局函数
函数不仅可以存储在全局的变量中,还可以存储在table的字段和局部变量中
---[[
lib = {}
lib.foo = function (x, y) return x + y end
lib.goo = function (x, y) return x - y end
lib = {
foo = function (x, y) return x + y end
goo = function (x, y) return x - y end
}
lib = {}
function lib.foo (x, y) return x + y end
function lib.goo (x, y) return x - y end
--]]
--[[
function values (t)
local i = 0
return function () i = i + 1;
return t[i]
end
end
t= {10, 20, 30}
iter = values(t)
while true do
local element = iter()
if element == nil then break end
print(element)
end
--]]
--[[
function allwords ()
local line = io.read()
local pos = 1
return function ()
while line do
local s, e = string.find(line, "%w+", pos)
if s then
pos = e + 1
return sting.sub(line,s,e)
else
line = io.read()
pos = 1
end
end
return nil
end
end
for word in allwords() do
print(word)
end
--]]
0 0
- lua advanced function
- lua function
- Lua function
- lua-function
- lua function
- VB6 Advanced Filter Function
- Chapter 19:Advanced Function Topics
- VB6 Advanced Filter Function(2)
- LUA Sleep Function
- lua中Function
- Lua学习之function
- Lua学习之function
- Lua中的 (function(){})()
- Lua基础之Function
- Lua 函数function
- Lua Function学习
- lua function 可变参数
- Lua中function总结
- 相似度计算方式的总结:java或python实现代码
- 2014-2-12AdapterView及其子类2
- proguard.cfg 系统找不到指定的文件
- lua function
- 360或720
- lua advanced function
- “移动医疗”四大入口,一条纵贯线和商业模式
- 改变Resin-2.1.17返回的server版本信息
- vim自动对齐
- launch failed binary not found---eclipse c++ linux
- Python学习笔记:01 环境搭建和“Hello World!”
- java学习笔记 access modifier 访问修饰符作用
- 《STL源码剖析》—— stl_config.h
- 还原数据库时数据库被占用导致的还原失败解决方案