一、Lua 教程的学习
Lua 教程
Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
Lua 是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组于 1993 年开发的,该小组成员有:Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo。
设计目的
其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
Lua 特性
- 轻量级: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。
- 可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。
- 其它特性:
- 支持面向过程(procedure-oriented)编程和函数式编程(functional programming);
- 自动内存管理;只提供了一种通用类型的表(table),用它可以实现数组,哈希表,集合,对象;
- 语言内置模式匹配;闭包(closure);函数也可以看做一个值;提供多线程(协同进程,并非操作系统所支持的线程)支持;
- 通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载等。
Lua 应用场景
- 游戏开发
- 独立应用脚本
- Web 应用脚本
- 扩展和数据库插件如:MySQL Proxy 和 MySQL WorkBench
- 安全系统,如入侵检测系统
第一个 Lua 程序
接下来我们使用 Lua 来输出"Hello World!"
实例(Lua 5.3)
print("Hello World!")
一、Lua 教程的学习相关推荐
- lua 获取网络时间_Lua脚本引擎教程:学习路线
从零开始的Lua教程(零):学习路线 出于分享学习心得和获得同伴讨论的目的,我打算写一个教程给想要学习如何实现lua解释器的同学提供一个参考. 我的学习经历 我在去年4月开始接触到游戏引擎的脚本引擎, ...
- Lua 教程 | 菜鸟教程
Table of Contents Lua 教程 设计目的 Lua 特性 Lua 应用场景 第一个 Lua 程序 Lua 环境安装 Linux 系统上安装 Lua 基本语法 第一个 Lua 程序 交互 ...
- centos 安装mysql-proxy_详解在Centos 5.2下安装最新Mysql Proxy LUA教程
在Centos 5.2下安装***Mysql Proxy LUA教程是本文要介绍的内容,主要是来了解Mysql Proxy LUA的安装过程,文章中有很详细的讲解,具体内容来看本文详解. mysql ...
- LUA教程类型Strings-7
指字符的序列.lua是8位字节,所以字符串可以包含任何数值字符,包括嵌入的0.这意味着你可以存储任意的二进制数据在一个字符串里.Lua中字符串是不可以修改的,你可以创建一个新的变量存放你要的字符串,如 ...
- 1.0 Lua教程之基本语法
概述 特性 安装 基本语法 交互式编程 脚本式编程 注释 标识符 全局变量 基本数据类型 nil 布尔 number 字符串 表 函数 线程 userdata(自定义类型) 摘自Lua教程,仅供学习, ...
- lua怎么嵌入php,Lua教程(一):在C++中嵌入Lua脚本
本系列教程主要介绍如何在C/C++程序里面嵌入Lua脚本,我打算从以下几个方面来介绍: 1.如何在C/C++里面嵌入Lua脚本 2.Lua访问C/C++数据结构(这里面要介绍类,结构体,函数,变量,枚 ...
- LUA教程链表-43
Lua中用tables很容易实现链表,每一个节点是一个table,指针是这个表的一个域(field),并且指向另一个节点(table).例如,要实现一个只有两个域:值和指针的基本链表,代码如下: 根节 ...
- LUA教程Chunks-2
Chunk是一系列语句,Lua执行的每一块语句,比如一个文件或者交互模式下的每一行都是一个Chunk. 每个语句结尾的分号(;)是可选的,但如果同一行有多个语句最好用:分开 a = 1 b = a*2 ...
- lua语言入门学习(二)lua语言的特点及注意事项
lua语言入门学习 lua语言的特点及注意事项 文章目录 lua语言入门学习 lua语言的学习地址 一.lua语言特点 1.注释 2.全局变量和局部变量 3.lua数据类型 4.字符串类型 5.多变量 ...
最新文章
- TCP/IP 广播的发送和接收
- CentOS 7安装Hadoop 3.0.0
- E24- please install the following Perl modules before executing ./mysql_install_db
- qcow2磁盘格式分析
- 杭电5620 KK's Steel
- 打败 Python、JS、C# 成最受欢迎编程语言,是时候掌握 Rust 了吗?
- 计算机主机光驱弹不出来怎么办,光驱弹不出来怎么办,教你win10光驱弹不出来的应对办法...
- 【音频编码】AAC编码之FDK AAC
- creo打不开stp文件_为什么stp网站打不开 creo打不开stp文件
- python中pixels函数_Python的PIL库中getpixel方法的使用
- PPT配色的实用小技巧分享
- 系统集成项目管理工程师05《项目进度管理》
- 树莓派csi摄像头和usb摄像头_一、树莓派CSI摄像头
- linux命令行怎么播放,在linux命令行里能听歌看电影吗
- linux 下载文件到本地
- 基于JAVA家政服务预约网站系统设计与实现 开题报告
- 国家/行业标准查询及下载全流程
- win8系统下载 mysql 64位 win8_win8系统64位iso镜像
- 解决RealPlayer11崩溃的问题
- 网赚博客如何月入过万?
热门文章
- 五角星具有“胜利”的含义。被很多国家的军队作为军官(尤其是高级军官)的军衔标志使用。也常常运用在旗帜上。我们的国旗上就有五角星。请你也画一个五角星吧。
- 【Java】AWT和Swing概述
- application.yml与bootstrap.yml的区别
- SSL/TLS高强度加密
- Windows 最新版sourcetree免登录方法
- Linux各种安装软件包的方式
- Codeforces E. Game With String
- 火狐浏览器无法启动java_打开火狐浏览器出现错误
- 防电脑辐射的方法,电脑防辐射技巧
- linux shell翻译英文脚本