-- 第 5 章  函数-- 一种对语句和表达式进行抽象的主要机制
print(os.date());        -- 打印日期  Sun Apr 20 12:44:46 2014
--  一看到sun,感慨广州没有晴天
-- 函数没有参数也要括号
-- 特殊情况:只有一个参数的时候, 并且参数一个string/table构造式,可不写括号
print "Hello world"
-- dofile "chapter03.lua"-- 冒号操作符:为面向对象式的调用而提供的函数调用操作符
t = {};-- 先意会一下下面的功能吧少年, 这东西是《lua程序设计第二版》第15章的内容
t.a = 1;
function t:f(a)self.a = self.a + a
endlocal temp = t;
temp:f(10);
print(temp.a);
t = nil;-- 5.1 多重返回值(之前提过)s, e, o = string.find("hello lua users", "lua");
print(s, e, o); -- 7    9     nilfunction foo0 () end
function foo1 () return "a" end
function foo2 () return "a", "b" end-- 书上的代码
-- x, y = foo2();
-- print(x, y);
-- x = foo2()
-- print(x, y);
-- x, y, z = 10, foo2()
-- print(x, y);-- print(unpack{1, 2, 3});-- 5.2 变长参数function add(...)local s = 0;for i,v in ipairs(...) dos = s + v;endreturn s;
endprint(add({1, 2, 3}));
-- 5.3 具名实参
-- 参数传递具有“位置性”, 有时候通过名称来制定参数也是很有用的function realName(option)print(option.a, option.b);
endrealName({a = 1, b = 2}) -- 有时候有用,但是这会增加程序员额外的注意力在参数上面

转载于:https://www.cnblogs.com/bibiAndroid/p/3708828.html

《lua程序设计(第二版)》学习笔记(五)-- 函数基础相关推荐

  1. MFC应用程序设计(第二版)学习笔记

    第一章, Windows应用开发基础 基本概念 windows API函数按功能大体分为以下: 窗口管理函数 WUI 图形设备管理函数 GUI 系统服务函数 SUI 早期开发使用软件开发工具包sdk, ...

  2. DirectX 9.0c游戏开发手记之“龙书”第二版学习笔记之1: 开场白

    在开场白之前的说明: 这是"DirectX 9.0c游戏开发手记"的第一部分,叫做"'龙书'第二版学习笔记",讲的是我做"龙书"第二版(原名 ...

  3. python函数是一段具有特定功能的语句组_Python学习笔记(五)函数和代码复用

    本文将为您描述Python学习笔记(五)函数和代码复用,具体完成步骤: 函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Pyth ...

  4. JAVA学习笔记五---函数

    JAVA学习笔记五---函数 5.1 方法的学习 编写一个程序,求圆的周长和面积. package practice; /*** 编写一个程序,求圆的周长和面积.* @author iszhangyo ...

  5. 【C++学习笔记】函数基础和参数传递

    一.函数基础   一个函数(function)定义包括:返回类型.函数名字.0或若干个形参组成的列表以及函数体.   实参是形参的初始值,并且实参的类型必须与对应的形参类型匹配,函数的形参列表可以为空 ...

  6. 利用python进行数据分析第二版学习笔记

    行话: 数据规整(Munge/Munging/Wrangling) 指的是将非结构化和(或)散乱数据处理为结构化或整洁形式的整个过程.这几个词已经悄悄成为当今数据黑客们的行话了.Munge这个词跟Lu ...

  7. python通过封装可以实现代码复用_Python学习笔记(五)函数和代码复用

    函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Python提供了许多内建函数,比如print().同样,你也可以自己创建函数, ...

  8. Docker技术入门与实战 第二版-学习笔记-3-Dockerfile 指令详解

    前面已经讲解了FROM.RUN指令,还提及了COPY.ADD,接下来学习其他的指令 5.Dockerfile 指令详解 1> COPY 复制文件 格式: COPY  <源路径> .. ...

  9. Docker技术入门与实战 第二版-学习笔记-7-数据管理(volume)

    Docker 数据管理 为什么要进行数据管理呢?因为当我们在使用container时,可能会在里面创建一些数据或文件,但是当我们停掉或删除这个容器时,这些数据或文件也会同样被删除,这是我们并不想看见的 ...

  10. Windows游戏编程大师技巧第二版学习笔记之第一章 实验补充

    前面记录的一下看书中的重点,编程还是要动手,下面就来动手试试,这里选择VC6.0编译器 这里先来配置游戏编程环境,原书中的dx81sdk_full.exe一共是1百多MB,其实没必要整那么多,看我在我 ...

最新文章

  1. 2022-2028年中国防臭袜行业投资分析及前景预测报告
  2. TensorFlow Lite+Android,Google要搞的大事情
  3. jQuery -- touch事件之滑动判断(左右上下方向)
  4. 【bzoj3442】学习小组 费用流
  5. Adobe Media Server 5(AMS)的安装及使用
  6. 操作系统之内存管理:3、基本分页存储管理
  7. python 黏贴版 pyperclip
  8. python unicode函数_python 中的unicode详解
  9. 提高局域网速度的21招
  10. halcon联合C#开发--连接大华相机读取二维码附源码
  11. 存储解决方案之——FC存储解决方案
  12. 计算机操作系统进程管理总结
  13. 微信群越来越多,我该如何科学地管理?
  14. activated 使用
  15. qq群文件问题完美解决
  16. 政务智能办体验升级、乳腺癌创新药加速研发,飞桨和文心大模型驱动应用智能涌现...
  17. hibernate精华总结
  18. 【工业4.0】第四次工业革命潜在的市场变化,随之萌生的机遇,以及构建企业敏捷能力的实践方法。...
  19. Hadoop之——计算机网络端口的定义
  20. golang使用mongoDB - mgo.v2

热门文章

  1. (C++)1015 德才论
  2. 树莓派实现人脸识别需要做的那些事
  3. 如何打开写好的jpetstore
  4. 变频器参数设置_变频器接线和参数设置
  5. 参加web前端开发培训具体要学什么内容
  6. 最热开源无服务器函数:五大Fission架构参考
  7. GSM中时隙、信道、突发序列、帧的解释
  8. 无准备,不编程——计算机达人成长之路(15)连载
  9. 确定安全威胁与漏洞-A
  10. 使用 HTML5 时如何改进移动 Web 应用开发