自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (1)
  • 收藏
  • 关注

原创 log4cplus

1,向文件中输出日志#include #include #include #include #include #include #include using namespace log4cplus;const int LOOP_COUNT = 1000000;int main(){    // RollingFileAppen

2012-03-27 19:16:55 3627

转载 map-reduce

MapReduce的名字源于函数式编程模型中的两项核心操作:Map和Reduce。也许熟悉Functional Programming(FP)的人见到这两个词会倍感亲切。因为Map和Reduce这两个术语源自Lisp语言和函数式编程。Map是把一组数据一对一的映射为另外的一组数据,其映射的规则由一个函数来指定。Reduce是对一组数据进行归约,这个归约的规则由一个函数指定。Map是一个把数据分开的

2012-03-20 22:07:11 4710

原创 tolua++绑定C/C++语言函数供lua调用

1,C/C++提供给lua的接口写在ScriptAPI_*.h和ScriptAPI_*.cpp中(根据模块可以分为多个文件)。为简化问题,要求接口参数为简单数据类型(number、string),且全部为入参,返回值只有一个,类型为int,一般表示错误码。2,如果需要的话,可以在ScriptAPI.pkg中嵌入lua代码,这些代码在调用生成的绑定接口tolua_pkgname_open时执行。

2012-03-14 18:21:41 3527

原创 函数嵌套与闭包

// 函数嵌套int demo1(){    int x = 3;    int bar(int z)    {        return x + z;    }    return bar(2) * bar(3);}// 闭包int delegate(int) add(int lhs){      int foo(in

2012-03-11 20:46:29 643

原创 lua作为配置文件的读取方法

struct PictureCfg{   string name;   float rotation;};1,全局配置-- picture0-cfg.luaname ="dragon.png"rotation= 180// 全局配置的读取voidLoadPictureCfg(vector& rstPictureCfgVec) {   PictureC

2012-03-11 16:40:45 12849

原创 C/C++与lua互调函数的方法

1,在lua脚本中调用C/C++代码中的函数在C++中定义函数时必须以lua_State为参数, 以int为返回值才能被Lua所调用。/*typedef int (*lua_CFunction) (lua_State*L);C 函数的类型。为了正确的和 Lua 通讯,C 函数必须使用下列定义了参数以及返回值传递方法的协议: C 函数通过 Lua 中的堆栈来接受参数,参数以正序入

2012-03-10 21:54:07 8099

原创 闭包-函数式编程

看一段javascript代码:function a(){var i = 0;function b(){alert(++i);}return b;}var c = a();c();这段代码有两个特点:1,函数b嵌套在函数a内部;2,函数a返回函数b。当函数a的内部函数b被函数a外的一个变量c引用的时候(函数a中的变量i被函数b引用,函数b

2012-03-10 20:18:51 1428

原创 C to D

void demo1(){// 基本类型占用的字节数和取值范围writefln("type\tsizeof\tmin\tmax\tinit");writefln("bool\t%d\t%#x\t%#x\t%#x", bool.sizeof, bool.min, bool.max, bool.init); // bool类型只占1个二进制位writefln("char\t%d\t

2012-03-09 20:48:53 557

转载 C++ to D

// 构造函数class Foo{    this(int x) {}} class A1 { this() {} int foo() {  return 0; }}class B1 : A1{ int a = 7;    int b;    this() {  super(); // 父类的构造函数  b = foo

2012-03-07 16:45:50 532

原创 模板元编程-C++

// 模板template class MyType{public:    int min()    {        return 0;    }    int max()    {        return 9;    }}; template class MyClass{ public:     typedef MyT

2012-03-07 12:13:16 1709

转载 模板

// Scoped Templatetemplate Foo(T, U){    class Bar {} // 类    T foo(T t, U u) { return t; } // 函数    T abc; // 变量    alias T* TPtr; // 类型别名}alias Foo!(int, char) TFoo;void de

2012-03-05 23:10:09 423

转载 加锁与解锁,多步事务回滚

// 加锁与解锁class Mutex{}void lock(Mutex m){}void unlock(Mutex m){}void process(){}void mutexDemo(){    Mutex m = new Mutex();    lock(m); // 锁定该互斥量    sc

2012-03-04 22:37:30 859

转载 ddoc

每一个文档都和一个声明(declaration)相关联,原则:1. 如果某单行文档的最左边是空格,它就和后面紧邻的声明关联 2. 多个关联到同一个声明的文档会被连接在一起 3. 没有关联到声明的文档会被忽略 4. 在module声明前的所有文档会被应用到整个模块 5. 如果文档出现在声明的右边,则关联到这个声明 6. 如果文档只是ditto,则使用上一个声明的文档,ditt

2012-03-04 17:25:26 9363

转载 注释

// 单行注释/* 多行注释*//+ 块注释,其中可以嵌套其它类型的注释// 嵌套的单行注释/*嵌套的多行注释*/+/void versionDemo(){    version(none) // 块注释。取消注释用version(all)    {        writeln("1, hello, worl

2012-03-04 16:29:50 409

转载 typeof

// typeof 用来获得一个表达式的类型,但表达式不会被计算bool typeofDemo(int i){    typeof(i) j; // j 的类型是 int    typeof(3 + 6.0) x; // x 的类型为 double    typeof(1)* p; // p 的类型为指向 int 的指针    int[typeof(p)] a; // a

2012-03-04 09:30:15 495

转载 import

基本导入工作原理:首先,在当前名字空间里搜索名字。如果没有找到,那么就到所有导入的模块里去找。如果在这些导入模块中唯一找到一个,则使用它。如果在多个导入模块里都找到,则报错。默认情况下,导入是private的。即如果 A 导入模块 B,同时 B 又导入模块 C,则 C 的名字是不会被搜索的。一个导入可以特别地声明为public的,即如果在B中导入C的语句形如:public import

2012-03-02 22:54:20 497

Programming in Lua

Programming in Lua Lua程序设计.chm

2011-04-29

空空如也

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

TA关注的人

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