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

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 林公子 閱讀(2968) 評論(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)  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美一区二视频| 欧美午夜电影在线| 亚洲国产欧美日韩精品| 久久精品中文| 久久精品国产亚洲aⅴ| 久久激情五月婷婷| 欧美成人午夜激情在线| 免费在线国产精品| 亚洲人成小说网站色在线| 欧美激情aⅴ一区二区三区| 欧美成人有码| 亚洲午夜av在线| 久久久一区二区| 欧美人成网站| 韩国v欧美v日本v亚洲v| av成人手机在线| 欧美一区二区在线免费观看 | 91久久综合| 亚洲一区二区三区精品在线观看 | 亚洲精品女av网站| 久久成人一区| 99热在这里有精品免费| 久久婷婷蜜乳一本欲蜜臀| 欧美1区3d| 国产在线国偷精品产拍免费yy| 亚洲欧洲美洲综合色网| 久久精品国产77777蜜臀| 欧美亚洲色图校园春色| 免费在线播放第一区高清av| aaa亚洲精品一二三区| 欧美 日韩 国产一区二区在线视频| 欧美日韩精品一区二区三区| 亚洲第一黄网| 亚洲第一区在线观看| 久久综合五月天婷婷伊人| 亚洲国内精品在线| 亚洲精品在线看| 欧美色图五月天| 亚洲国产精品va在线观看黑人| 久久国产乱子精品免费女| 亚洲淫性视频| 国产欧美日韩另类一区 | 国产在线精品二区| 久久综合影音| 欧美激情四色 | 午夜欧美大片免费观看| 亚洲色图自拍| 亚洲第一中文字幕在线观看| 欧美成人中文字幕| 欧美午夜理伦三级在线观看| 久久精品伊人| 欧美日韩不卡一区| 久久免费精品日本久久中文字幕| 久久久久久久久久久成人| 亚洲精品一区二区三区在线观看 | 欧美激情bt| 久久精品视频网| 欧美黄色网络| 久久久久久久尹人综合网亚洲| 久久久久女教师免费一区| 日韩视频一区二区| 久久久人人人| 久久久久国产精品www| 欧美护士18xxxxhd| 久久久综合免费视频| 欧美久色视频| 亚洲黄色成人| 一区二区三区久久| 欧美岛国激情| 欧美国产精品久久| 在线播放亚洲| 久久久久国产精品一区| 欧美伊人久久久久久午夜久久久久 | 亚洲欧美精品中文字幕在线| 国产精品久久久91| 亚洲精品在线免费| 一区二区三区免费观看| 久久精品成人欧美大片古装| 一本一本久久| 日韩一级精品| 国产精品超碰97尤物18| 欧美成年视频| 亚洲精品欧洲| 国产精品盗摄久久久| 亚洲男人av电影| 久热精品视频在线观看一区| 国产一区二区三区免费在线观看| 亚洲一区二区三区在线看| 久久爱91午夜羞羞| 国内视频一区| 欧美精品一区二区高清在线观看| 亚洲精品一二区| 欧美一区二区三区精品| 91久久中文| 国产专区精品视频| 国产精品久久久久久久久久免费看| 久久高清免费观看| 亚洲综合国产激情另类一区| 六月丁香综合| 久久精品国产在热久久| 韩国欧美国产1区| 欧美精品亚洲精品| 蜜桃av一区二区三区| 亚洲专区一二三| 亚洲国产另类久久精品| 欧美在线你懂的| 99国产精品国产精品毛片| 伊甸园精品99久久久久久| 国产欧美日韩激情| 国产精品播放| 国产日韩亚洲欧美综合| 久久成人精品一区二区三区| 欧美日韩中文| 欧美日韩1080p| 欧美视频官网| 国产精品毛片在线看| 国产精品免费一区二区三区在线观看| 欧美jizz19hd性欧美| 欧美日韩国产在线播放网站| 欧美精品一区二区三区在线看午夜| 欧美h视频在线| 欧美午夜精品一区| 国产精品久久久久久久9999| 国产毛片一区二区| 在线精品国精品国产尤物884a| 国产欧美日韩一区二区三区在线 | 中文在线不卡| 久久久久亚洲综合| 欧美日韩国产综合视频在线| 国产精品日韩欧美一区二区三区| 国产人成精品一区二区三| 91久久精品美女高潮| 亚洲综合精品自拍| 欧美α欧美αv大片| 午夜在线电影亚洲一区| 巨胸喷奶水www久久久免费动漫| 欧美 日韩 国产 一区| 国产欧美韩日| 一区二区av| 亚洲国产日韩欧美| 久久精品国语| 国产一区在线视频| 亚洲一区观看| 亚洲视频中文| 国产精品扒开腿做爽爽爽软件| 在线免费不卡视频| 久久综合精品国产一区二区三区| 亚洲一二三区精品| 欧美性色综合| 亚洲一区二区三区午夜| 亚洲国产日韩欧美在线图片| 欧美一区二区三区久久精品| 国产精品久久国产愉拍| 在线观看成人网| 欧美日韩黄色大片| 亚洲尤物在线视频观看| 欧美激情a∨在线视频播放| 亚洲电影在线免费观看| 亚洲精品在线观看免费| 欧美日韩午夜| 亚洲小视频在线| 久久精品国产精品亚洲综合| 国内视频精品| 欧美精品一区二区三区久久久竹菊| 99re视频这里只有精品| 先锋影音一区二区三区| 国产在线精品成人一区二区三区| 蜜桃av一区| 亚洲欧美国产日韩天堂区| 欧美成人免费小视频| 亚洲欧美一区二区三区在线| 国内精品久久久久国产盗摄免费观看完整版 | 黄色资源网久久资源365| 免费成人在线观看视频| 中文av字幕一区| 欧美1级日本1级| 亚洲欧美中文另类| 亚洲精品四区| 国产主播一区二区| 久久色中文字幕| 夜夜嗨av一区二区三区中文字幕 | 久久综合伊人77777尤物| 亚洲午夜小视频| 亚洲欧洲美洲综合色网| 国产欧美日韩亚州综合| 欧美精品久久99久久在免费线| 午夜影院日韩| 一区二区三区免费网站| 亚洲电影自拍| 久久亚洲电影| 久久国产精品久久久| 亚洲天天影视| 亚洲国产高清视频| 国产一本一道久久香蕉| 国产精品hd| 欧美三区免费完整视频在线观看| 老司机午夜精品视频| 欧美一站二站| 欧美在线91| 欧美一级夜夜爽|