2014年7月30日

在 Lua 中管理 C 对象的生存期

摘要: 在给Lua写 C 扩展库的时候,经常需要从 C 中传对象指针到 lua 状态机中。如果只是传递一个指针而不关心其生命期的话,用 lightuserdata 即可。但有时候我们需要让 lua 来负责 C 对象的生命期管理,下面提供的一段代码展现一个思路:用 lua 本身的 gc 机制来管理对象,并允许... 阅读全文

posted @ 2014-07-30 14:20 &大飞 阅读(465) 评论(0) 推荐(0) 编辑

lua_settable

摘要: lua_settable(lua_State* L, int index)就是把表在lua堆栈中的值弹出来,index 是table 在堆栈中的位置,假如 table 在 -3, 则key 应该是 -2,value 是 -1相当于 table[key] = value. 阅读全文

posted @ 2014-07-30 14:17 &大飞 阅读(329) 评论(0) 推荐(0) 编辑

LUA的堆栈问题

摘要: 学习LUA也有一些时日了,个人认为对于LUA中的栈的理解很重要,嗯,写个小文章(真的很小)如果你看了LUA的文档,那么就应该很清楚LUA与C交互数据时都是用到LUA中所谓的stack。那么当我调用lua_open函数之后栈是什么样的呢?空的(luaopen_base等会往栈上加进一些东西)。那么至于... 阅读全文

posted @ 2014-07-30 13:57 &大飞 阅读(1800) 评论(2) 推荐(0) 编辑

2014年7月28日

(转)Boost::thread库的使用

摘要: 阅读对象本文假设读者有几下Skills[1]在C++中至少使用过一种多线程开发库,有Mutex和Lock的概念。[2]熟悉C++开发,在开发工具中,能够编译、设置boost::thread库。环境[1]Visual Studio 2005/2008 with SP1[2]boost1.39/1.40... 阅读全文

posted @ 2014-07-28 10:20 &大飞 阅读(501) 评论(0) 推荐(0) 编辑

2014年7月25日

Boost - 多线程-boost recursive_mutex用法

摘要: 比较一下,就知道这个函数怎么用,效果如何.C++代码#includevoidrun(){for(inti=0;i#include#includeboost::recursive_mutexio_mutex;voidrun(){for(inti=0;i#include#includeboost::re... 阅读全文

posted @ 2014-07-25 18:09 &大飞 阅读(2234) 评论(0) 推荐(0) 编辑

2014年7月23日

Ogre 中加载 material方法步骤

摘要: Ogre 中加载 material方法步骤1.创建一个ManualObject对象;2.设置索引号3.到目录../OgreSDK_vc9_v1-7-2/media/materials/scripts新建一个material文件Guide.materialCode:materialMyMaterial... 阅读全文

posted @ 2014-07-23 19:06 &大飞 阅读(1191) 评论(0) 推荐(0) 编辑

2014年7月19日

免费的Git私有代码托管服务

摘要: 涉及到与别人协作,需要考虑找个私有的Git托管服务。Github很有名,也很好用,只是免费版仅能用于开源项目。经过一番比较,最后选定了两个。BitbucketAtlassian公司的托管服务。------------------------------Bitbucket支持Git、Mercurial... 阅读全文

posted @ 2014-07-19 22:37 &大飞 阅读(226) 评论(0) 推荐(0) 编辑

Github免费账户使用”私有库“

摘要: 根据Github的免费策略,用户提交的内容是必须要要公开的,天下没有免费的午餐嘛,如果想免费用就要贡献一点东西出来,这个还是很合理很有利于促进开源社区发展的。 但是,总有一些时候,我们想利用Github来存储一点私人的东西,可是作为免费用户又不能建立private库,这时可以利用一下这个项... 阅读全文

posted @ 2014-07-19 21:42 &大飞 阅读(7134) 评论(0) 推荐(0) 编辑

Quick-Cocos2d-x 集成 Google protobuf 方法

摘要: 第一步 需要最新的protobuf 类库和解析程序。下载地址:https://github.com/sean-lin/protoc-gen-luagit clonehttps://github.com/sean-lin/protoc-gen-lua.git到任意的一个地方然后,可以得到重要的两个目... 阅读全文

posted @ 2014-07-19 16:25 &大飞 阅读(437) 评论(0) 推荐(0) 编辑

BitOp

摘要: This list of API functions is not intended to replace a tutorial. If you are not familiar with the terms used, you may want to study theWikipedia arti... 阅读全文

posted @ 2014-07-19 16:19 &大飞 阅读(409) 评论(0) 推荐(0) 编辑

lsqlite

摘要: a simple libsqlite3 binding for lua5.0-5.2 that provides 3 functions only and is still fully functional: local db = lsqlite.open(database) results, er... 阅读全文

posted @ 2014-07-19 16:17 &大飞 阅读(211) 评论(0) 推荐(0) 编辑

用LUA实现BYTEARRAY和BYTEARRAYVARINT

摘要: 2014-01-10更新:ByteArray 和 ByteArrayVarint 已经进入 quick-cocos2d-x 的 framework.许多 Actionscript 程序员已经从 Flash 转到 Cocos2d-x 了。那么以前的那些超级好用的类库都不见了,只好重新来过。我利用 Lu... 阅读全文

posted @ 2014-07-19 15:54 &大飞 阅读(759) 评论(0) 推荐(0) 编辑

2014年7月18日

GPU着色器实现实时滤镜

摘要: 认识着色器用过opengl的同学对着色器 应该不会陌生,但对与iOS终端设备的开发者,对于图形图像有着深入了解的人不多,本人也只是个初学者,对于opengl es 2.x才引入的着色器也是初步认识,WWDC的专题讲座有一节就是讲opengl es的新特性的 结合AVFoundation那一节 我们还... 阅读全文

posted @ 2014-07-18 16:43 &大飞 阅读(584) 评论(0) 推荐(0) 编辑

#pragma pack

摘要: 对齐方式编辑程序编译器对结构的存储的特殊处理确实提高CPU存储变量的速度,但是有时候也带来了一些麻烦,我们也屏蔽掉变量默认的对齐方式,自己可以设定变量的对齐方式。编译器中提供了#pragmapack(n)来设定变量以n字节对齐方式。n字节对齐就是说变量存放的起始地址的偏移量有两种情况:第一、如果n大... 阅读全文

posted @ 2014-07-18 07:53 &大飞 阅读(139) 评论(0) 推荐(0) 编辑

C#中结构体与字节流互相转换 [StructLayout(LayoutKind.Sequential)]

摘要: 一、c#结构体1、定义与C++对应的C#结构体在c#中的结构体不能定义指针,不能定义字符数组,只能在里面定义字符数组的引用。C++的消息结构体如下://消息格式 4+16+4+4= 28个字节struct cs_message{ u32_t cmd_type; char username[16]; ... 阅读全文

posted @ 2014-07-18 07:28 &大飞 阅读(9350) 评论(0) 推荐(3) 编辑

System.Runtime.InteropServices 命名空间

摘要: http://msdn.microsoft.com/zh-cn/library/system.runtime.interopservicesSystem.Runtime.InteropServices命名空间提供各种各样支持 COM 互操作 及平台调用服务的成员。如果您对这些服务不熟悉,请参见与非托... 阅读全文

posted @ 2014-07-18 07:07 &大飞 阅读(2413) 评论(0) 推荐(0) 编辑

C#与C++在语言层面的区别(不断补充)

摘要: 注:C#语言发展十分迅速,而且仍然有很大的提升空间,所以现在写下的有关C#语言上的一些限制,可能过一两年就不同了,所以需要不断更新。至于C++,因为已经很久没怎么变动,所以就容易得多。(*) 允许初始化成员变量C#允许C++不允许(*) 编译器自动添加默认无参构造函数c++:当用户实现了有参构造函数... 阅读全文

posted @ 2014-07-18 06:53 &大飞 阅读(352) 评论(0) 推荐(0) 编辑

2014年7月17日

[转]“static_cast”: 无法从“UINT (__thiscall CSizingControlBar::* )(CPoint)”转换为“LRESULT (__thiscall CWnd::* )(CPoint)”

摘要: error C2440: “static_cast”: 无法从“UINT (__thiscall CSizingControlBar::* )(CPoint)”转换为“LRESULT (__thiscall CWnd::* )(CPoint)” f:\tools\4bands ifx_xmm2130... 阅读全文

posted @ 2014-07-17 23:15 &大飞 阅读(444) 评论(0) 推荐(0) 编辑

2014年6月6日

百度云推送sdk集成问题

摘要: 在Xcode中新建一个项目,加入百度云推送sdk,按照PDF说明文档集成。运行时报错。"_OBJC_CLASS_$_BPush", referenced from:在百度的问题回复中找到了原因,不支持arm64ios sdk貌似不支持arm64啊! : "_OBJC_CLASS_$_BPush", ... 阅读全文

posted @ 2014-06-06 15:57 &大飞 阅读(199) 评论(0) 推荐(0) 编辑

2014年6月5日

Xcode升级4.6后Bug处理

摘要: Xcode又升级了,又出现Warning了.补充解决办法,记录如下:1:Jsonkit中的Direct access to objective-c's isa is deprecated in favor of object_setClass() and object_getClass()将 arr... 阅读全文

posted @ 2014-06-05 14:57 &大飞 阅读(222) 评论(0) 推荐(0) 编辑

导航