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

專職C++

不能停止的腳步

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  163 Posts :: 7 Stories :: 135 Comments :: 0 Trackbacks

常用鏈接

留言簿(28)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

lua語言是一個非常好用的語言,一個特點是,非常輕量級。二個特點是,非容易擴展。三個特點是,lua與C++互調非常容易。
可以將一個C++中類的大部分方法,都可以綁定成lua語言的一部分。
下面的代碼,是綁定我的庫中DatetTime類的代碼:
 1void InitDateTime(lua_State * L)
 2{
 3    using namespace luabind;
 4    module(L,"zdh")
 5        [
 6            class_<XDate<XAnsiString> >("XDate")
 7            .def(constructor<XInt,XInt,XInt>())
 8            .def(constructor<>())
 9            .def(constructor<XInt>())
10            .def(constructor<const XDate<XAnsiString> &>())
11            .def("SetNowDate",&XDate<XAnsiString>::SetNowDate)
12            .def("GetDay",&XDate<XAnsiString>::getDay)
13            .def("GetMonth",&XDate<XAnsiString>::getMonth)
14            .def("GetYear",&XDate<XAnsiString>::getYear)
15            .def("SetDate",(void (XDate<XAnsiString>::*)(zdh::XInt,zdh::XInt,zdh::XInt))&XDate<XAnsiString>::SetDate)
16            .def("SetDate",(void (XDate<XAnsiString>::*)(zdh::XInt))&XDate<XAnsiString>::SetDate)
17            .def("SetDate",(void (XDate<XAnsiString>::*)(const zdh::XDate<XAnsiString> &))&XDate<XAnsiString>::SetDate)
18            .def("ToString",(zdh::XAnsiString (XDate<XAnsiString>::*)(voidconst)&XDate<XAnsiString>::ToString)
19            .def(self == XDate<XAnsiString>())
20            .def(self < XDate<XAnsiString>())
21            .def(self<=XDate<XAnsiString>())
22        ];
23    //(return_arg-type (classname::*)(arg1-type,grg2-type,))&classname::class_memberfunction
24    //(void(CBase::*)(long))&CBase::Show)
25}
下面是綁定我的庫中字符串的代碼
void InitString(lua_State * L)
{
    
using namespace luabind;
    module(L,
"zdh")
        [
            class_
<XAnsiString>("XString")
            .def(constructor
<const XChar *>())
            .def(constructor
<>())
            .def(constructor
<const XAnsiString &>())
            .def(
"c_str",(const zdh::XChar * (XAnsiString::*)(voidconst)&XAnsiString::c_str)
            .def(
"getLength",(zdh::XInt (XAnsiString::*)(voidconst)&XAnsiString::getLength)
            .def(
"Trim",(zdh::XAnsiString (XAnsiString::*)(voidconst&XAnsiString::Trim)
            .def(
"Trim",(zdh::XAnsiString & (XAnsiString::*)(zdh::XAnsiString &const)&XAnsiString::Trim)
        ];
}
下面兩個,是調用lua的XAnsiString與XDateTime輸出的函數。這兩個函數在lua中有定義。
void PrintString(const XAnsiString & paramStr)
{
    luabind::call_function
<void>(gL,"printstring",boost::ref(paramStr));
}
void PrintDate(const XDate<XAnsiString> & paramDate)
{
    luabind::call_function
<void>(gL,"printdate",boost::ref(paramDate));
}
下面,就是定義這些函數的lua語言代碼
----fun.lua--------
function addint ( x, y )
    
local r = (x + y) * 10
    return r
end
function printstring(s)
    print(s:c_str())
end
function printdate(d)
    printstring(d:ToString())
end
然后,主要使用下面的main,就可以有了一個已經擴展了的lua語言運營環境。
int main(int argc, char * argv[])
{
    lua_State 
*= lua_open();    //初始化lua
    gL 
= L;
    luaL_openlibs(L);    
//載入所有lua標準庫
    luaL_dofile(L, 
"add.lua");
    Init(L);
    
string s;
    cout
<<"lua>";
    
while(getline(cin,s))    //從cin中讀入一行到s
    {
        
if( s == "exit()" ) 
        {
            break;
        }
        
//載入s里的lua代碼后執行
        bool err 
= luaL_loadbuffer(L, s.c_str(), s.length(),
            
"line") || lua_pcall(L, 000);
        
if(err)
        {
            
//如果錯誤,顯示
            cerr 
<< lua_tostring(L, -1);
            
//彈出錯誤信息所在的最上層棧
            lua_pop(L, 
1);
            cout
<<endl;
        }
        cout
<<"lua>";
    }

    lua_close(L);
//關閉
    return 
0;
}
這里,使用luabind使用lua語言擴展和C++相互調用,非常簡單。
posted on 2010-11-05 17:08 冬瓜 閱讀(1894) 評論(1)  編輯 收藏 引用 所屬分類: 原創

Feedback

# re: 一個luabind簡單類綁定 2010-11-07 17:22 expter
下午用了原來LUABIND可以支持。  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲日本中文字幕区| 亚洲网站啪啪| 久久综合伊人77777麻豆| 国产在线精品自拍| 蜜臀va亚洲va欧美va天堂| 久久精品日韩欧美| 亚洲激情在线观看| 亚洲美女区一区| 国产欧美二区| 免费成人性网站| 欧美激情精品久久久久久| 日韩一级不卡| 西西人体一区二区| 亚洲电影中文字幕| 亚洲美女尤物影院| 国产欧美一区二区精品性色| 蜜桃av一区二区在线观看| 欧美国产日产韩国视频| 午夜在线电影亚洲一区| 久久精品一区蜜桃臀影院| 亚洲精品乱码久久久久久久久| 亚洲美女福利视频网站| 国产一区二区主播在线| 欧美福利电影网| 欧美视频福利| 欧美国产日韩一二三区| 国产精品国产三级国产aⅴ入口| 久久色中文字幕| 欧美日韩一区精品| 久久综合给合| 国产精品久久久久aaaa九色| 欧美1级日本1级| 国产精品美女一区二区在线观看| 久久久精品2019中文字幕神马| 欧美精品粉嫩高潮一区二区 | 一本久道久久综合狠狠爱| 亚洲香蕉视频| 亚洲人成77777在线观看网| 亚洲在线中文字幕| 日韩视频第一页| 久久久久久日产精品| 亚洲欧美bt| 欧美日韩亚洲综合| 欧美成人精品一区二区| 国产午夜精品久久久久久免费视| 亚洲精品午夜| 亚洲日韩视频| 久久一区亚洲| 久久琪琪电影院| 国产精品综合| 中文欧美日韩| 亚洲午夜精品久久| 欧美日本网站| 亚洲激情小视频| 亚洲黄一区二区| 久久九九久精品国产免费直播| 欧美一区二区三区成人| 国产精品成人v| 亚洲精品你懂的| 亚洲国产经典视频| 久久九九热re6这里有精品| 久久久久国产精品www| 国产人久久人人人人爽| 亚洲一区二区三区中文字幕| 亚洲一区二区久久| 欧美日韩专区| 亚洲无毛电影| 午夜精品www| 国产麻豆91精品| 久久www成人_看片免费不卡| 久久国产精品一区二区三区| 国产日韩精品一区| 欧美一级欧美一级在线播放| 久久久国产一区二区| 国产综合亚洲精品一区二| 久久精品人人做人人综合 | 日韩亚洲一区二区| 欧美精品一区在线观看| 日韩一二三区视频| 亚洲男人天堂2024| 国产日韩欧美精品综合| 久久久国产成人精品| 欧美黄色精品| 日韩性生活视频| 国产精品看片资源| 久久精品在线视频| 亚洲国产高清aⅴ视频| 亚洲深夜影院| 国内精品久久久久久| 美女精品自拍一二三四| 一二美女精品欧洲| 久久综合色婷婷| 亚洲毛片在线观看.| 国产精品久久久免费| 久久gogo国模裸体人体| 亚洲大片免费看| 亚洲自拍三区| 在线免费观看欧美| 国产精品成人免费| 久久男人av资源网站| 一本色道久久综合亚洲精品不卡| 久久精品视频网| 日韩网站在线看片你懂的| 国产精品国产a级| 老鸭窝毛片一区二区三区| 一区二区三区视频观看| 美女网站久久| 欧美一区二区三区男人的天堂| 在线免费观看视频一区| 欧美日韩免费在线观看| 久久精品在这里| 亚洲在线视频| 亚洲精品免费看| 欧美aaaaaaaa牛牛影院| 亚洲欧美国产高清| 亚洲精品视频一区| 怡红院精品视频| 国产欧美一区二区三区沐欲 | 欧美激情综合| 久久福利资源站| 亚洲午夜女主播在线直播| 欧美成人亚洲成人| 久久精品日产第一区二区| 亚洲性视频h| 亚洲精品一区二区三区蜜桃久| 永久免费视频成人| 国产欧美日韩在线观看| 欧美三级日本三级少妇99| 欧美黄色免费网站| 久久性天堂网| 欧美在线观看一区二区| 亚洲资源在线观看| 夜夜狂射影院欧美极品| 91久久精品美女| 亚洲福利视频免费观看| 欧美成年人在线观看| 久久一区二区三区四区五区| 欧美专区在线观看| 欧美一区二区久久久| 欧美一级理论片| 欧美一区免费| 欧美中文字幕在线| 欧美在线free| 久久久久久久久蜜桃| 久久精品理论片| 久久久免费精品| 农村妇女精品| 亚洲国产高清一区二区三区| 欧美顶级少妇做爰| 亚洲国产精品日韩| 亚洲另类在线视频| 一区二区成人精品| 亚洲一区日韩| 欧美在线播放一区| 久久久国产精品一区二区三区| 久久精品在线观看| 久久天堂av综合合色| 欧美.www| 欧美视频在线播放| 国产日产欧美一区| 在线日韩视频| av成人免费在线| 性亚洲最疯狂xxxx高清| 久久久999精品免费| 欧美韩日高清| 一区二区三区视频观看| 性感少妇一区| 免费在线看一区| 欧美午夜无遮挡| 韩日视频一区| 99国产精品久久久久老师| 亚洲免费在线视频| 久久综合给合久久狠狠色| 91久久在线观看| 亚洲综合成人婷婷小说| 另类人畜视频在线| 欧美啪啪一区| 国产亚洲欧美日韩日本| 亚洲精品影院| 久久精品综合网| 日韩亚洲欧美中文三级| 欧美一级在线亚洲天堂| 欧美成人一区二区三区在线观看 | 欧美日韩精品福利| 国产一区二区三区的电影| 亚洲精品乱码久久久久久| 性欧美xxxx视频在线观看| 欧美大片在线看免费观看| 亚洲少妇自拍| 欧美成人国产一区二区| 国产亚洲一级高清| 中文欧美字幕免费| 欧美国产视频一区二区| 亚洲专区一二三| 欧美日韩视频免费播放| 亚洲电影在线看| 久久视频一区| 性18欧美另类| 国产精品入口麻豆原神| 亚洲精品一区二区在线|