20170917
来源:互联网 发布:linux python模块 编辑:程序博客网 时间:2024/06/03 17:28
1613-5 黄加勉 <2017.9.17> 连续第7天总结
A.今日任务
1.lua包
2.元表
B.具体内容
1.lua的包本质上还是一个table,table中可以包含函数,类似于c++的类的成员函数:
-- 函数包package = {}function package.getMax(map) index = 1 for key,value in pairs(map) do if (value > map[index]) then index = key end end return map[index]endfunction package.sort(map) index = 1 for val = 1,#map do index = val for f = index,#map do if(map[f] > map[index]) then local temp = map[f] map[f] = map[index] map[index] = temp end end end return mapendfunction package.output(map) for key,value in pairs(map) do print(value) endendmap = {5,1,2,8,5,3,4}map = package.sort(map)package.output(map)
2.元表用于两个对象之间的算数操作,例如两个table的相加,类似于c++的运算符重载。
元表是table拥有的一个table,其中包含了执行相应动作的函数。
当两个table相加的语句被执行时,会搜索是否其某个table包含add方法:
function addMap(map1,map2) new_map = {} for index = 1,#map1 do new_map[index] = map1[index] + map2[index] end return new_mapendmt = {} -- 元表mt.__add = addMapmap1 = {1,2,3,4}map2 = {4,3,2,1}setmetatable(map1,mt)setmetatable(map2,mt)map3 = map1 + map2for key,value in pairs(map3) do print(value)end
C.明日任务
1.qt tcp其他
阅读全文
0 0
- 20170917
- 20170917
- 20170917_字符串翻转
- SQL(Oracle)学习20170917
- 20170917Hive学习总结
- 存储过程(Oracle)学习20170917
- 20170917_删除单链表中的指定节点
- 20170917_关键字restrict的含义
- CCF CSP第十一次认证考试 20170917
- 20170917软件工程师在线笔试之员工幸福感问题
- 20170917软件工程师在线笔试之员工点外卖问题
- 20170911-20170917 HTML+CSS工作学习周总结
- 20170917_进程之间的通信和线程之间的同步
- 在notepad++中安装jslint插件
- POJ 1061 青蛙的约会
- 【学习摘记】马士兵JAVASCRIPT_课时8-9_表单验证的2种方式(弹框,标语)
- Linux驱动基本的总线模式
- RF+Appium 压力测试:安装卸载和升降级测试(续)
- 20170917
- 1075:众数问题
- 自动检测可用串口实现串口通讯程序(可实现串口热插拔检测)
- opencv开发笔记(二):图像的模糊
- 如何自动识别APK中使用了哪些SDK
- Leetcode 168 Excel Sheet Column Title
- java.lang.NullPointerException: Attempt to invoke virtual method 'void com.moreunion.zhenghao.ui.wi
- Leetcode 171 Excel Sheet Column Number
- Arraylist集合的使用