青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C++優雅之旅

探索C++

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  15 隨筆 :: 0 文章 :: 20 評論 :: 0 Trackbacks
  剛開始學習Luabind,所以算是一些簡單的筆記。
  使用Luabind前要包含相關的頭文件,引入luabind命名空間。注意包含luabind.hpp并不會自動包含lua相關頭文件,要根據需要自己添加。

 
#include <luabind/luabind.hpp>

extern "C"
{
#include 
<lua.h>
#include 
<lualib.h>
}

using namespace luabind;

  假設有以下類定義:
 1 // TestClass.h
 2 class TestClass
 3 {
 4 public:
 5 
 6     TestClass(string s);
 7 
 8     static TestClass* Singleton();
 9 
10     void Print();
11 
12 private:
13 
14     static TestClass* mSingleton;
15 
16     string mString;
17 };
18 
19 // TestClass.cpp
20 TestClass* TestClass::mSingleton = NULL;
21 
22 TestClass::TestClass(string s)
23 {
24     mString = s;
25 }
26 
27 TestClass* TestClass::Singleton()
28 {
29     if (TestClass::mSingleton == NULL)
30     {
31         return new TestClass("Hello");
32     }
33     else
34     {
35         return mSingleton;
36     }
37 }
38 
39 void TestClass::Print()
40 {
41     cout << mString << endl;
42 }
 
  創建一個bindClass函數,用來進行導出類的相關工作
 1 int bindClass(lua_State* L)
 2 {
 3     open(L);
 4 
 5     module(L)
 6         [
 7             class_<TestClass>("TestClass")
 8             .def(constructor<string>())
 9             .def("Print"&TestClass::Print),
10             def("Singleton"TestClass::Singleton)    // 請注意static成員函數Singleton()導出時和非靜態成員函數的寫法區別,
                                                                     // 和全局函數的導出寫法一樣。

11         ];
12 
13     return 0;
14 }
  def模版類中定義導出函數時,成員函數指針一定要用取地址符&,如TestClass::Print()。而自由函數和靜態函數可用可不用,如TestClass::Singleton()。
  現在就可以寫代碼測試了:
// test.lua
1 testClass = Singleton()
2 testClass:Print()

// main.cpp
 1 int _tmain(int argc, _TCHAR* argv[])
 2 {
 3     TestClass testClass("Hello from lua.");
 4     
 5     lua_State* L = luaL_newstate();
 6 
 7     init(L);
 8 
 9     luaL_dofile(L, "add.lua");
10 
11     lua_close(L);
12 
13     return 0;
14 }
15 
  運行結果:

posted on 2009-05-02 01:32 林公子 閱讀(2974) 評論(6)  編輯 收藏 引用 所屬分類: Lua

評論

# re: Luabind導出類到lua 2009-07-30 11:03 Eric Xiang
if (TestClass::mSingleton = NULL) 這句有BUG  回復  更多評論
  

# re: Luabind導出類到lua 2009-09-11 13:53 liutp
if (TestClass::mSingleton = NULL) 這句是什么BUG ?  回復  更多評論
  

# re: Luabind導出類到lua 2009-09-25 10:00 林公子
@Eric Xiang
@liutp
不好意思,手誤犯了低級錯誤
if (TestClass::mSingleton = NULL) 應為
if (TestClass::mSingleton == NULL)
或者寫為
if (NULL == TestClass::mSingleton)
可以避免不小心將等號寫為賦值符。  回復  更多評論
  

# re: Luabind導出類到lua 2012-12-26 16:07 Havien
bindClass這個方法在哪兒調用呢。  回復  更多評論
  

# re: Luabind導出類到lua 2014-07-24 10:21 滔海縱舟
構造函數里應該加上一行
TestClass::mSingleton = this;  回復  更多評論
  

# re: Luabind導出類到lua 2014-07-24 10:22 滔海縱舟
Init(L) ->> bindClass(L)  回復  更多評論
  


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久综合狠狠| 日韩午夜av| 久久亚洲高清| 久久久精品动漫| 欧美一区二区大片| 久久精品在线| 欧美一区二区日韩一区二区| 欧美尤物一区| 国际精品欧美精品| 老妇喷水一区二区三区| 久久综合九色九九| 久久综合中文字幕| 欧美激情精品久久久久久大尺度| 一区二区欧美日韩视频| 亚洲一品av免费观看| 亚洲欧美在线aaa| 久久久www免费人成黑人精品| 性欧美大战久久久久久久久| 翔田千里一区二区| 美女图片一区二区| 欧美午夜欧美| 国产午夜精品视频| 亚洲高清在线观看| 午夜精品区一区二区三| 毛片一区二区| 中文在线资源观看视频网站免费不卡| 亚洲视频一区二区免费在线观看| 久久精品亚洲热| 欧美午夜a级限制福利片| 国户精品久久久久久久久久久不卡 | 一区二区精品在线观看| 亚洲男人的天堂在线观看| 免费在线欧美黄色| 亚洲永久免费视频| 欧美激情二区三区| 狠久久av成人天堂| 亚洲欧美另类中文字幕| 亚洲福利视频一区| 亚洲一级黄色片| 欧美精品在线一区| 亚洲高清久久| 久久久精品一区| 亚洲午夜久久久| 欧美日韩国产a| 亚洲国产精品第一区二区| 欧美中文字幕久久| 在线视频日本亚洲性| 欧美激情第三页| 亚洲人成在线免费观看| 女主播福利一区| 久久精品人人做人人综合| 欧美1区2区3区| 欧美一区二区免费| 国产午夜精品久久久久久免费视 | 久久精品av麻豆的观看方式| 亚洲国产一区在线观看| 久久一区激情| 狠狠色丁香久久婷婷综合丁香 | 国产精品精品视频| 亚洲一区二区三区成人在线视频精品 | 亚洲二区在线视频| 老牛国产精品一区的观看方式| 亚洲免费视频中文字幕| 国产精品福利在线观看| 亚洲香蕉网站| 亚洲一区二区三区乱码aⅴ| 欧美日韩一区二区三区视频| 亚洲精品五月天| 亚洲人成网站精品片在线观看| 老**午夜毛片一区二区三区| 亚洲国产日韩欧美| 91久久精品国产91性色| 欧美全黄视频| 西西裸体人体做爰大胆久久久| 亚洲综合色丁香婷婷六月图片| 国产欧美日本一区二区三区| 久久国产日本精品| 蜜臀久久99精品久久久久久9| 亚洲精品欧美激情| 亚洲婷婷综合色高清在线| 国产乱码精品一区二区三区五月婷| 欧美一级电影久久| 久久久精品国产一区二区三区| 亚洲第一页在线| 亚洲精品日韩在线观看| 国产精品国产三级欧美二区 | 亚洲人成久久| 夜夜嗨av一区二区三区免费区| 国产精品乱人伦中文| 久久久国产成人精品| 免费观看国产成人| 亚洲视频二区| 久久成人免费电影| 亚洲精品国产拍免费91在线| 999在线观看精品免费不卡网站| 国产精品视频不卡| 欧美成人一区二区在线| 欧美深夜影院| 狂野欧美激情性xxxx| 欧美日韩在线播放| 两个人的视频www国产精品| 欧美日韩美女一区二区| 久久久亚洲国产美女国产盗摄| 欧美a级一区| 久久国产精品久久久久久| 久久午夜色播影院免费高清| 欧美日韩亚洲视频一区| 欧美一站二站| 欧美精品久久一区| 久久久久久久综合| 欧美日韩亚洲国产一区| 欧美wwwwww| 国产一区二区日韩| 一区二区三区av| 亚洲经典在线| 久久久噜久噜久久综合| 欧美一级播放| 国产精品xnxxcom| 亚洲欧洲视频| 亚洲欧洲在线看| 久久一区二区三区国产精品 | 亚洲欧美综合国产精品一区| 日韩亚洲一区在线播放| 久久久久久成人| 欧美在线看片a免费观看| 欧美日本亚洲| 亚洲国产精品一区二区久 | 亚洲国产一区二区a毛片| 午夜在线视频一区二区区别| 亚洲在线观看免费| 欧美日韩精品系列| 亚洲精品久久久久久久久久久久 | 国产日韩欧美自拍| 亚洲欧美欧美一区二区三区| 亚洲一区二区三区高清 | 久久中文字幕一区| 久久久精品tv| 国产一区二区三区四区在线观看| 一区二区三区高清在线 | 亚洲电影专区| 91久久国产精品91久久性色| 久久影视三级福利片| 欧美 日韩 国产一区二区在线视频| 韩国av一区二区| 久久久人人人| 亚洲第一免费播放区| 亚洲精品视频在线| 欧美日韩国产丝袜另类| 一区二区精品国产| 欧美在线视频播放| 激情欧美亚洲| 欧美va亚洲va香蕉在线| 91久久精品国产91久久| 亚洲一区二区av电影| 国产精品嫩草99a| 欧美一区激情| 欧美激情国产精品| 在线视频日韩精品| 国产日韩欧美在线视频观看| 久久久久久久精| 亚洲精品美女在线| 欧美亚洲视频| 亚洲国产欧美一区二区三区丁香婷| 欧美久久久久久蜜桃| 亚洲中无吗在线| 亚洲黄色在线| 影音国产精品| 欧美不卡视频一区发布| 亚洲精品精选| 久久久www成人免费精品| 亚洲精品在线一区二区| 国产精品美女久久| 久久躁狠狠躁夜夜爽| 中文欧美在线视频| 麻豆久久婷婷| 午夜精品久久久久久久99热浪潮| 狠狠色狠狠色综合人人| 欧美日韩午夜| 看欧美日韩国产| 亚洲性视频网站| 欧美激情一二区| 久久精品噜噜噜成人av农村| 亚洲理论电影网| 激情欧美日韩一区| 国产精品视频福利| 欧美另类极品videosbest最新版本| 午夜欧美精品久久久久久久| 亚洲黄色尤物视频| 欧美aⅴ一区二区三区视频| 亚洲一区二区成人| 亚洲激情成人| 国产自产女人91一区在线观看| 欧美日韩国产三区| 蜜桃久久av一区| 久久精品人人爽| 欧美在线一二三区| 亚洲欧美成人精品| 中日韩美女免费视频网址在线观看 | 久久精品1区| 亚洲一区二区三区免费观看 |