zoukankan      html  css  js  c++  java
  • tolua reference

    Using Lua API and tag method facilities, tolua maps C/C++ constants, external variables, functions, classes, and methods to Lua.

    How tolua works

    (1)创建a package file (a C/C++ cleaned header file) listing the constants, variables, functions, classes, and methods we want to export to the Lua environment.

    (2)parses this file and creates a C/C++ file that automatically binds the C/C++ code to Lua. 
    (3) accesed from Lua

    How to use toLua
    由(1)an executable (2)and a library组成
    the executable represents the parser that reads a package file and output a C/C++ code that implements the binding to access the C/C++ features from Lua.

    tolua -o myfile.c myfile.pkg

    tolua -n pkgname -o myfile.c myfile.pkg

    when using C++, we can opt for automatic initialization
    tolua -a -n pkgname -o myfile.c myfile.pkg
    automatic initialization sometimes does not work

    也能够调用tolua_pkgname_close(void);解绑

    能够使用-H选项将open与close操作导出到头文件里。


    void tolua_restorestate (void);

    Basic Concepts

    package file may include other package file, use $<include_file>

    Basic types
    char int float double     ->       number
    char*       ->              string
    void*       ->              userdata
    tolua ignores const modifier

    Functions in C/C++ can also manipulate Lua objects explicitly.
    lua_Object也是一种基本类型。

    User defined types

    非Basic Types均为用户自己定义类型,are mapped to tagged userdata type in Lua.
    Lua can only store pointers to 自己定义类型。

    NULL and nil
  • 相关阅读:
    android selector shape 使用
    android AES 加密解密
    TabLayout+ViewPager 标题不显示问题
    BottomNavigationView 使用
    greendao3.2.0使用
    android studio svn不显示问题
    scrapy爬虫学习系列五:图片的抓取和下载
    scrapy爬虫学习系列四:portia的学习入门
    scrapy爬虫学习系列二:scrapy简单爬虫样例学习
    scrapy爬虫学习系列一:scrapy爬虫环境的准备
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/6971409.html
Copyright © 2011-2022 走看看