Lua学习笔记(5): 表】的更多相关文章

Lua 学习笔记 入门级 一.环境配置 方式一: 1.资源下载http://www.lua.org/download.html 2.用src中的源码创建了一个工程,注释调luac.c中main函数,生成了一个exe,直接可以测试lua了 方式二(推荐): 从https://code.google.com/p/luaforwindows/ 下载“LuaForWindows_v5.1.4-46.exe”,一键安装即可  二.执行 lua xxx.lua 三.注释 1.行注释格式:-- 2.块注释格式…
Lua学习笔记 1.lua的优势 a.可扩张性     b.简单     c.高效率     d.和平台无关 2.注释 a.单行注释 --        b.多行注释 --[[  --]] 3.类型和值   8个基本类型,检测变量类型用type  a.nil         print(type(nil))  -->nil         全局变量没有赋值以前,会被默认nil类型 b.boolean     print(type(true)) -->boolean       除了false和…
Lua学习笔记:面向对象 https://blog.csdn.net/liutianshx2012/article/details/41921077 Lua 中只存在表(Table)这么唯一一种数据结构,但依旧可以玩出面向对象的概念. 添加成员函数 好吧,如果熟悉 C++ 还是很好理解类似的进化过程的:如果说 struct 里可以添加函数是从C 过渡到 C++ 的第一认识的话,为 Table 添加函数也可以算是认识 Lua 是如何面向对象的第一步吧.   player = { health =…
    曾经一直用C++写代码.话说近期刚换工作.项目组中的是cocos2dx-lua,各种被虐的非常慘啊有木有.     新建cocos2dx-lua项目.打开class能够发现,事实上就是C++项目啦,只是为什么仅仅有一类Appdelegate类呢?哈哈,我相信聪明的你一定猜到了,伦家其它代码都下载lua里面了,在C++中调用就能够了,如今就来看看C++是怎样调用Lua脚本的吧.     说下我用的Lua版本号是5.2.3,系统是Linux.为什么是Linux呢,学编程最好是Linux啦,一…
Lua学习笔记4. coroutine协同程序和文件I/O.错误处理 coroutine Lua 的协同程序coroutine和线程比较类似,有独立的堆栈.局部变量.独立的指针指令,同时又能共享全局变量 但coroutine又和多线程程序不同,首先一个多线程程序可以同时运行多个单线程,但协同程序只能串行,也就是说同一时刻只能有一个协同程序在运行,并且这个协同程序将一直占用处理器直到被显式的挂起. 基本的函数 coroutine.create(f) 创建一个协同程序,返回coroutine, f是…
Lua学习笔记1:Windows7下使用VS2015搭建Lua开发环境(一)注意:工程必须添加两个宏:“配置属性”/“C或C++”/“预处理器”/“预处理器定义”,添加两个宏:_CRT_SECURE_NO_WARNINGS LUA_BUILD_AS_DLL   (艹了个地街...这TM就是个坑——这是因为在luaconf.h文件中定义了LUA_BUILD_AS_DLL宏,它控制了__declspec(dllexport)和__declspec(dllimport)的定义,必须加上这个开关才有这两…
Lua学习指南:http://www.lua.org/manual/ 首先我们要明确的一点是:在Lua中,除了关键字外一切都是变量. Lua关键字 可以查看这个地址:http://www.lua.org/manual/5.1/manual.html#2.1 关于分号 语句的最后可以用分号";"表示结束,也可以不写. 而对于一行有多个语句的情况下,语句之间可以用分号";"隔开,也可以用空白隔开.一般来说,建议总是用分号隔开. 使用注释 单行注释使用“--”即可,以后的…
https://my.oschina.net/cokolin/blog/526911 摘要: 本文首发于 blog.csdn.net/vipshop_ebs/article/details/39472873 作者为本人,只是该博客暂停维护转到 OSC 了. 本文主要讲 AngularJS 的表单验证,Demo页面我使用 Bootstrap3.2.0 作为前端显示框架,同时引入了jQuery1.11.1,AngularJS 为刚刚新发布的1.2.25. 在新的项目中巧妙地接触到了Google提供的…
在Bootstrap学习笔记(一) 排版的基础上继续学习Bootstrap的表单,编辑器及head内代码不变. 3-1 基础表单 单中常见的元素主要包括:文本输入框.下拉选择框.单选按钮.复选按钮.文本域和按钮等. 在Bootstrap框架中,通过定制了一个类名`form-control`,也就是说,如果这几个元素使用了类名“form-control”,将会实现一些设计上的定制效果. 1.宽度变成了100% 2.设置了一个浅灰色(#ccc)的边框 3.具有4px的圆角 4.设置阴影效果,并且元素…
在上一章节Spring学习笔记1——IOC: 尽量使用注解以及java代码中,已经搭建了项目的整体框架,介绍了IOC以及mybatis.第二节主要介绍SpringMVC中的表单数据验证以及文件上传. 一.表单数据验证 用户注册时,需要填写账号.密码.邮箱以及手机号,均为必填项,并且需要符合一定的格式.比如账号需要32位以内,邮箱必须符合邮箱格式,手机号必须为11位号码等.可以采用在注册时验证信息,或者专门写一个工具类用来验证:来看下在SpringMVC中如何通过简单的注释实现表单数据验证. 在j…
前言 在上一章vue学习笔记(四)事件处理器这一篇博客的内容中,我们已经了解vue是如何绑定事件的,而本篇博客主要讲解的是vue中表单输入的绑定,通常我们自己提交信息的时候都是通过表单将信息到服务器的,例如登陆.注册等等.但是直接提交的话可能存在恶意的行为,尽管服务器那边对我们提交的信息进行处理,但是无形之中还是会增加服务器的压力,为了减少服务器的压力,vue也提供了一系列简便的方法供我们使用,允许我们在提交信息的时候进行处理,确保数据的准确性,这样就可以大大的减少服务器的压力,那么一起来看看v…
一.lua安装和编程环境搭建 lua语言可以在官网:http://luadist.org/下载安装包安装,编程IDE之前学习使用的是SciTE(https://www.cnblogs.com/movin2333/p/14348703.html),这个IDE安装时会一并安装lua,当然,vscode.idea.luaStudio等IDE也可以编写lua,这次使用SublimeText编写lua,SublimeText的内地官网:http://www.sublimetext.cn/. 二.lua语法…
表 在Lua中,表(table)是十分重要的一种数据结构,实际上Lua对于复杂数据类型也仅提供了表给我们,我们通过表可以实现我们需要的大部分重要的数据结构,比如数组. table类型实现了关联数组,关联数组是一种具有特殊索引方式的数组:不仅可以通过整数来索引它,还可以使用字符串或其它类型的值(除了nil)来索引它.此外,table没有固定的大小,可以动态得添加任意数量的元素到一个table中. 在Lua中,table既不是“值”,也不是“变量”,而是对象.可以将table想象成一种动态分配的对象…
表的初始化方式 表的索引类型一般有两种,一种是通过标识符访问,一种是通过数字访问 --通过标识符访问的表的初始化 table1 = {key_1 = "haha", key_2 = "233", key_3 = 10} --通过数字作为索引的表的初始化 table2 = {"haha", "233", 10} 对于第一种类型,访问方式有两种 使用取成员符号.访问 print(table1.key_1) 使用[]加标识符的字符串…
工作需要,上周对lua赶进度似地学习了一遍,主要参考<lua中文教程>一书,中间参考一些<lua游戏开发实践>,首先说说这两本书,后者不适合初学,里面是对一个游戏脚本系统进行粗略的介绍,lua语言本身的东西介绍的比较少,前者是比较基础的书,不过可能自己笔记愚笨,lua的环境配置折腾了半天,后面找到了lua_windows的安装版本,才解决换台电脑就满脑子的恶心.lua语言主要面向脚本,通过配置来实现系统的灵活性,现在也有很多游戏核心采用C/C++实现,逻辑部分采用lua或者其他脚本…
学习了有一周多了.之前一直不想献丑,但还是记录下这个过程. 第1章  开发软件搭建 1. ubuntu 下lua安装 sudo apt-get install lua5.1 2.win下的环境搭建. 我选择的是Lua For Windows.一键安装.保存为LUA格式即可运行 预计在Linux下 开发工具 用 sublime_text,实际使用notepadqq,个人喜好无所谓. 第1章  语法学习 1.1  语法学习 Lua -i filename 开启调试. dofile (“filenam…
1.C# 与 LUAC#调用LUA比较简单,但LUA调用C#,有两种方法,一种是直接反射调用,但这种方法有局限性,比如性能低,在IOS平台无法使用反射,因此一般使用WARP方法,即把C#代码注册到LUA虚拟机,然后调用的时候,LUA -> C# WARP -> C# CODE参考:http://blog.csdn.net/pengdongwei/article/details/50420612 2.LUA变量Lua是动态类型语言,变量不要类型定义,只需要为变量赋值就会创建这个变量Lua 变量有…
在Lua中的table不是一种简单的数据结构,它可以作为其他数据结构的基础.其他语言提供的数据结构,如数组.记录.线性表.队列.集合等,在Lua中都可以通过table来表示.而且使用Lua实现这些数据结构的效率高.   一.数组            在Lua中数组没有固定的大小,可以根据需要增加长度.当初始化数组时,也就间接的定义了它的大小.     二.矩阵与多维数组        在Lua中,有两种方式来表示矩阵,一种是使用一个“数组的数组”,也就是数组中的元素是数组.另一种方式就是合并索…
函数的定义:在Lua中,函数是一种对语句和表达式进行抽象的主要机制. 一.函数基本用法        在Lua中,      1.函数既可以完成某项特定的任务.(被视为一条语句)      2.也可以只做一些计算并返回结果.(被视为一句表达式) 格式:      function function_name( ... )     -- body     end      ---- 等同于       function_name=function( ... )  --body  end 声明:  …
Lua 环境搭建 Windows 不用 visual studio 系统环境:Win7 64bit 联系方式:yexiaopeng1992@126.com 前言: 最近需要学习Unity3d游戏中的热更新技术,选择ULua方案,因此准备学习一些Lua的基础知识.之前在Ubuntu上曾经写过Lua版本的"HelloWorld", 但那时的环境搭建只需要下载源码,然后 make & make install 就可以了,但一到Windows下就完全不会做了.经过网络查找对比,得到目前…
一直以来对Lua热更新技术很感兴趣,在上周开始了对Lua的学习,主要学的是uLua. 直接上干货 准备工作: LuaInterface包括两个核心库一个是LuaInterface.dll,一个是Luanet.dll,我们可以通过LuaInterface完成Lua和C#(CLR)之间的互相调用 需要在vs的工程中导入两个dill分别是LuaInterface.dll和luanet.dll,前者是vs调用lua时需要引用,并在vs的工程中引入命名空间using LuaInterface;引用以后就可…
Lua中的表达式中可以包含数字常量.字面字符串.变量.一元和二元操作符及函数调用.表达式用于表示值.当然表达式中还可以包含函数定义以及table构造式.Lua中的操作符有:算术操作符.逻辑操作符.关系操作符.   一.算术操作符      Lua中算术操作符有:      二元:“+加”.“-减”.“*乘”.“/除”.“^指数”.“%取模”.一元:“-负号”   二.关系操作符        Lua的关系操作符:< 小于, > 大于, <= 小于等于, >= 大于等于, == 相等…
首先Lua执行的每一段代码都称之为“程序块”,一个程序块也就是一连串的语句或命令,例如一个源码文件或一行代码.Lua语句之间并不需要分隔符,如代码中的换行就不起任何作用,当然为了养成编码习惯当两条或者多条语句并列时最好使用分隔符进行分隔,如以下的四种都是合法的.      x = 1; y = 2        x = 1 y = 2         x = 1;      y = 2;        x = 1      y = 2   一.标识符规范      Lua中的标识符可以是由任意字…
Lua是一个小巧的脚本语言.Lua由标准C编写而成,代码简洁,几乎在所有的操作系统和平台上都可以编译,运行. 主要讲一下mac和win下的环境搭建. 工具:      1.Sublime Text 2      2.LuaForWindows_v5.1.4-46.exe      3.lua-5.1.4.tar.gz(Mac) 一.Win7下安装 为了方便开发,借助于Sublime Text 2来学习和运行lua文件,当然Sublime Text 2也是我最喜欢和最强大的文本编辑器,完全可以用来…
对于一个Web开发者来说,处理HTML表单是一个最为普通又具挑战的任务.Symfony2集成了一个Form组件,让处理表单变的容易起来.在这一节里,我们将从基础开始创建一个复杂的表单,学习表单类库中最重要的内容. Symfony2 的Form组件是一个独立的类库,你可以在Symfony2项目之外使用它. 创建一个简单的表单:假设你要创建一个应用程序的todo列表,需要显示一些任务.因为你的用户需要编辑和创建任务,所以你需要创建一个表单.在你开始之前,首先来看通用的Task类,用来表示和存储一个单…
上周末学习了<A Tour of PostgreSQL Internals>的第一部分(View 1),今天我们继续打开书本,继续View 2 部分. View 2 Postgresql的系统表和数据类型 和其他大多数DBMS相比,postgresql在更大程度上使用了" 数据驱动 ". 为什么这么说呢? 按照Tom Lane的解释,原因如下: postgresql使用一套系统表描述数据库表,表中的每一列,每个索引等等: 除此以外,postgresql同样使用系统表存储数据…
Lua本身是没有class之类的关键字的,但是我们可以巧妙利用function也是值和table的特性来实现面向对象的特性. 通过复制表的实现 Lua中的类也是一个table对象,下面我们看看一个简单的类的定义: People = {}--定义表 People --添加方法的第一种方式 People.talk = function() print("people talk.") end --添加方法的第二种方式 function People.say() print("peo…
函数 lua的函数以function关键字开始,后跟函数名称和参数,最后以end结束,我们看一个简单的函数定义: function foo() --do something end function add(a, b) return a + b end 在载入脚本时,函数不会执行,仅仅是会被载入内存和名称关联起来. 另外需要注意的是,调用的函数必须是在代码上方进行了定义的函数,否则运行时会报错,如下: , ))--运行时这里会报错, 因为 add 还没有被载入到内存 function add(a…
一.基本知识 1.第一个程序: print("hello lua"); 在交互模式下直接运行: > print("hello lua") hello lua                  --输出 保存在文件中运行: $ lua hello.lua hello lua                   --输出 2.chunks: * 定义:trunks指运行的语句块,一个文件,一个函数或是运行模式下每行语句.语句组合都是trunks: * 语句之间的分…
Cocos2d-x 3.0超过环境的版本号来建立和前Cocos2d-x 2.0 差异较大的版本,从同时Cocos2d-x 3.0项目打包成apkAndroid的应用程序文件,步骤,构建环境有些乏味安德鲁斯,但是,一旦建立后,.未来将很快!OK,发环境吧! 1.cocos2d-x环境的设置以及android的环境搭建 1.下载cocos2d-x 3.0正式版 2.下载android的sdk以及ndk 3.下载ant (注:cocos2d-x的环境变量配置须要用到ant.主要是android须要使用…