自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 lua 中 lua_gettable的使用 C++ 调用lua 读取table

尝试着从C中读取lua中的table。 lua中提供lua_gettable 的C接口。例如我们要从a.lua中读取一个全局变量 background--=================-- file name :a.lua--================background = {r=0,g=0,b=255}先写一个读取table值的接口void getRGBValue

2015-11-17 17:41:53 2256 1

原创 lua 中点号与冒号的区别

曾经遇到面试题目,面试官给的题目大概是这样, a 是一个table ,请你说出a.foo() 与a:foo() 的区别。我也只能呵呵了,因为我根本就不会。因为工作中对lua 根本就是看看代码就开始埋头敲代码了。 看下面代码: A = {count=0}function A:inscrease() self.count = self.count + 1endfunction A:ge

2015-11-13 16:47:57 918

原创 lua 继承,使用元方法__index

lua中table 可以作为对象,一个类,一个对象是一个table,对象中所有的变量和函数都存放在table中。实际上lua库中的方法也存在table中(print、tostring、tonumber等都存在_G这个全局的table中)。上篇文章中提到的__index的使用,当访问一个table 不存在的索引时,lua解释器回去查找这个table是否存在__index这个元方法,如果找到就调用__

2015-11-13 15:15:19 478

原创 lua 元方法__newindex,实现只读的table

lua中__newindex的调用机制跟__index (关于__index的用法参考上一篇博客点击打开链接)的调用机制是一样的,当访问table中一个不存在的key,并对其赋值的时候,lua解释器会查找__newindex元方法,如果存在,调用该方法,如果不存在,直接对原table索引进行赋值操作。local t = {}local prototype = {}local mt = {_

2015-11-10 17:54:35 1511

原创 lua元方法__index,对table进行初始化,设置默认值

当访问一个table不存在的索引时,lua解释器回去查找table中是否有__index 这个元方法,如果存在返回__index 最终的调用结果,如果不存在那么就返回一个空值nil。当创建一个新的table时,默认没有元表,对不存在的索引访问直接返回nil,可以通过设置元表,元方法使其调用__index返回nil的情况:local t = {}print(t[2]) :--返回nil

2015-11-10 17:23:31 2988

原创 用lua 下载文件小示例

本文是自己闲暇之余用来学习lua的小笔记,篇幅比较短,有涉及到的例如HTTP网络协议,不细说。本文演示的是通过HTTP 下载个远程文件,需要用到LuaSocket 库。要下载一个文件,必须先打开一个到网点的链接,然后发送下载该文件的请求,并接收保存数据块,最后关闭链接。首先,先加载luaSocket库require "socket"2.定义主机和下载文件名host = "www

2015-11-02 17:18:12 9924 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除