﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-暮暮息幕幕新-随笔分类-6.Lua/XML</title><link>http://www.cppblog.com/singohgod/category/4053.html</link><description>每天晚上入睡，都将迎来崭新的明天，这就是梦想！-大宝天天见</description><language>zh-cn</language><lastBuildDate>Tue, 20 May 2008 02:29:50 GMT</lastBuildDate><pubDate>Tue, 20 May 2008 02:29:50 GMT</pubDate><ttl>60</ttl><item><title>[原创]LuaPlus上手指南(1)</title><link>http://www.cppblog.com/singohgod/archive/2007/04/16/22069.html</link><dc:creator>大宝天天见</dc:creator><author>大宝天天见</author><pubDate>Mon, 16 Apr 2007 15:22:00 GMT</pubDate><guid>http://www.cppblog.com/singohgod/archive/2007/04/16/22069.html</guid><wfw:comment>http://www.cppblog.com/singohgod/comments/22069.html</wfw:comment><comments>http://www.cppblog.com/singohgod/archive/2007/04/16/22069.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cppblog.com/singohgod/comments/commentRss/22069.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/singohgod/services/trackbacks/22069.html</trackback:ping><description><![CDATA[<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 15pt; FONT-FAMILY: 宋体; mso-no-proof: yes">LuaPlus</span></strong><strong style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 15pt; FONT-FAMILY: 宋体; mso-no-proof: yes">上手指南<span lang=EN-US>(1)<o:p></o:p></span></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-FAMILY: 宋体; mso-no-proof: yes; mso-bidi-font-size: 10.5pt"><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-FAMILY: 宋体; mso-no-proof: yes; mso-bidi-font-size: 10.5pt"><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-no-proof: yes">版权所有<span lang=EN-US>,</span>转载请注明出处<span lang=EN-US>,</span>勿用于商业用途<span lang=EN-US>,</span>谢谢<span lang=EN-US>!<o:p></o:p></span></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-no-proof: yes">作者<span lang=EN-US>:<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </span></span>大宝天天见<span lang=EN-US><o:p></o:p></span></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-no-proof: yes">Blog:<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </span><a href="http://www.cppblog.com/singohgod"><u><font color=#800080>http://www.cppblog.com/singohgod</font></u></a><o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-no-proof: yes">本人水平有限<span lang=EN-US>,</span>有错请指出<span lang=EN-US>,</span>欢迎交流<span lang=EN-US>,</span>共同进步<span lang=EN-US>!<br><br><o:p></o:p></span></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-FAMILY: 宋体; mso-no-proof: yes; mso-bidi-font-size: 10.5pt"><o:p><img height=120 src="http://www.cppblog.com/images/cppblog_com/singohgod/4054/t_Lua_LOGO.jpg" width=119 border=0>&nbsp;<img height=120 src="http://www.cppblog.com/images/cppblog_com/singohgod/4054/t_LuaPlus_LOGO.jpg" width=120 border=0><br></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">国内关于</span><span lang=EN-US>Lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的资料实在是太少</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">为了寻找一个合适的</span><span lang=EN-US>Lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">封装</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">真是如同大海捞针</span><span lang=EN-US>.</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在看了众多资料后锁定以下几种</span><span lang=EN-US>:LuaBind ToLua++ LuaPlus.</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在选择上颇有讽刺的味道</span><span lang=EN-US>,LuaBind</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的版本号还没到</span><span lang=EN-US>1.0,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">加上网友颇有微词</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">放弃</span><span lang=EN-US>.ToLua++</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">本来有朋友推荐</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">但是怎么都找不到下载</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">官网就是打不开</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">无赖放弃</span><span lang=EN-US>.</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">就只有</span><span lang=EN-US>LuaPlus</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">了</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">看到一些人的评价还行</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">于是决定就用它吧</span><span lang=EN-US>.</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><span lang=EN-US>LuaPlus</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的资料就更少了</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">连怎么配置怎么调试等什么都没有</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">只有沐枫大哥讲解了语法方面的一篇文章</span><span lang=EN-US>.</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">啊哟</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">怎么搞呢</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">难道又只有硬着头皮上了</span><span lang=EN-US>?(</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">某伟人曾说过</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">但凡杰出的事都是硬着头皮干出来滴</span><span lang=EN-US>)</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">好了</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">言归正传</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下面讲讲我的经验吧</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 14pt; COLOR: red; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如何编译</span></strong><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 14pt; COLOR: red"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon; mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">1.<span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下载</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">首先到官方网站下载</span><span lang=EN-US>: <a href="http://www.luaplus.org/"><u><font color=#0000ff>http://www.luaplus.org/</font></u></a></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下载这个</span><span lang=EN-US>: All source code: <a href="http://luaplus.org/LuaPlus51_Build1100.zip"><u><font color=#0000ff>http://luaplus.org/LuaPlus51_Build1100.zip</font></u></a> (</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我当前的版本</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当然越新越好</span><span lang=EN-US>)</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon; mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">2.<span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">剥离</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">解开下载包</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">打开</span> <span lang=EN-US>\LuaPlus51_Build1100\Src\LuaPlus </span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">里面是全部源文件</span><span lang=EN-US>,src</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下是</span><span lang=EN-US>lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的源文件</span><span lang=EN-US>.</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这里有个令人疑惑的地方</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">源文件中带了一些不需要的文件</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">要剔除去</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">基本上需要以下这些文件</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">1)<span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang=EN-US>Lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">库文件</span><span lang=EN-US>:</span></p>
<p>
<table class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 480; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext" cellSpacing=0 cellPadding=0 border=1>
    <tbody>
        <tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes">
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 142pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt" vAlign=top width=189>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lapi.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lapi.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lauxlib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lauxlib.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lbaselib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lcode.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lcode.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ldblib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ldebug.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ldebug.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ldo.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ldo.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ldump.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lfunc.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lfunc.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lgc.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lgc.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>linit.c</span></p>
            </td>
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 142.05pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt" vAlign=top width=189>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>liolib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>llex.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>llex.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>llimits.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lmathlib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lmem.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lmem.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>loadlib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lobject.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lobject.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lopcodes.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lopcodes.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>loslib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lparser.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lparser.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lstate.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lstate.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lstring.c</span></p>
            </td>
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 142.05pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt" vAlign=top width=189>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lstring.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lstrlib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ltable.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ltable.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ltablib.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ltm.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>ltm.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lua.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>luaconf.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lualib.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lundump.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lundump.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lvm.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lvm.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lzio.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lzio.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>print.c</span></p>
            </td>
        </tr>
    </tbody>
</table>
</p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">2)<span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang=EN-US>LuaPlus</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">头文件</span><span lang=EN-US>:</span></p>
<p>
<table class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 480; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext" cellSpacing=0 cellPadding=0 border=1>
    <tbody>
        <tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes">
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 213.05pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt" vAlign=top width=284>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>auxiliar.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaAutoBlock.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaCall.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaFunction.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaHelper.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaHelper_Object.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaHelper_StackObject.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaLink.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaObject.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaObject.inl</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaPlus.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaPlusCD.h</span></p>
            </td>
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 213.05pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt" vAlign=top width=284>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaPlusFunctions.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaPlusInternal.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaStackObject.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaStackObject.inl</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaStackTableIterator.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaState.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaState.inl</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaStateOutFile.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaTableIterator.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>luathread.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>pt.h</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>srm.h</span></p>
            </td>
        </tr>
    </tbody>
</table>
</p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">3)<span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang=EN-US>LuaPlus</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">源文件</span></p>
<p>
<table class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 480; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext" cellSpacing=0 cellPadding=0 border=1>
    <tbody>
        <tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes">
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 213.05pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt" vAlign=top width=284>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaCall.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaObject.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaPlus.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaPlusAddons.c</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaPlusFunctions.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaPlus_Libs.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaStackObject.cpp</span></p>
            </td>
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 213.05pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt" vAlign=top width=284>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaStackTableIterator.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaState.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaStateOutFile.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaState_DumpObject.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>LuaTableIterator.cpp</span></p>
            <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US>lwstrlib.c</span></p>
            </td>
        </tr>
    </tbody>
</table>
</p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon; mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">3.<span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">建立项目</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">然后你就可以在</span><span lang=EN-US>VS</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中建立一个新项目</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">静态链接库的</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><v:shapetype id=_x0000_t75 coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></v:path><o:lock v:ext="edit" aspectratio="t"><img src="http://www.cppblog.com/images/cppblog_com/singohgod/4054/o_1.jpg" border=0></o:lock></v:shapetype></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">分别把需要的文件加进去</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">之后编译</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">应该能通过了</span><span lang=EN-US>.</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 14pt; COLOR: red; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如何使用</span></strong><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 14pt; COLOR: red"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">接着讲讲如何在你的其他项目中使用</span><span lang=EN-US>LuaPlus.</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon">1.</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">必要的配置</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你的项目可能是这样的</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><img src="http://www.cppblog.com/images/cppblog_com/singohgod/4054/o_2.jpg" border=0></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设置</span><span lang=EN-US>GameClient</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的依赖项是</span><span lang=EN-US>LuaPlusLib</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">#include "LuaPlus.h"<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">using namespace LuaPlus;<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">记得干这事</span><span lang=EN-US>&#8230;</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon">2.</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">创建一个状态</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">LuaStateOwner state;<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">今后的操作都围绕这个</span><span lang=EN-US>state</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; mso-para-margin-left: 2.0gd"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon">3.</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">执行脚本</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">int iret = state-&gt;DoFile("test.lua");<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">返回值为</span><span lang=EN-US>0</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">表示成功</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">否则不成功</span><span lang=EN-US>.</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; mso-para-margin-left: 2.0gd"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon">4.C++</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中获取</span><span lang=EN-US style="COLOR: maroon">Lua</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">脚本的变量</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">假设你的</span><span lang=EN-US>test.lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中有</span><span lang=EN-US>: </span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US>health = 200;</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">通过下列方法就可以在</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中得到这个数值</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">int mytest = state-&gt;GetGlobal("health").GetInteger();<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; mso-para-margin-left: 2.0gd"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon">5.C++</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中调用</span><span lang=EN-US style="COLOR: maroon">Lua</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">脚本里的函数</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">假设你的</span><span lang=EN-US>test.lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中有</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">function Add(x, y) <o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>return x+y; <o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">end<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中需要先声明这个函数</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">LuaFunction&lt;float&gt; Add =<span style="mso-spacerun: yes">&nbsp; </span>state-&gt;GetGlobal("Add");<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这样你就有了</span><span lang=EN-US>Add()</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个函数</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">然后就可以像平常一样使用它了</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">float myret = Add(<st1:chmetcnv UnitName="F" SourceValue="3.14" HasSpace="False" Negative="False" NumberType="1" TCSC="0" w:st="on">3.14f</st1:chmetcnv>,<st1:chmetcnv UnitName="F" SourceValue="5.25" HasSpace="False" Negative="False" NumberType="1" TCSC="0" w:st="on">5.25f</st1:chmetcnv>);<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; mso-para-margin-left: 2.0gd"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="COLOR: maroon">6.Lua</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">脚本中调用</span><span lang=EN-US style="COLOR: maroon">C++</span></strong><strong style="mso-bidi-font-weight: normal"><span style="COLOR: maroon; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">函数</span><span lang=EN-US style="COLOR: maroon"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在读取</span><span lang=EN-US>test.lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">之前要先把</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">函数注册到</span><span lang=EN-US>Lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的运行时栈里</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这样在执行</span><span lang=EN-US>lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">脚本的时候</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">才知道执行哪一个函数</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">首先有函数</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">int LS_PrintNumber(LuaState* state)<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">{<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; mso-para-margin-left: 2.0gd"><span lang=EN-US style="COLOR: blue">LuaStack args(state);<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue"><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if (args[1].IsNumber()) {<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>printf("%f\n", args[1].GetNumber());<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>return 0;<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">}<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">然后注册这个函数到</span><span lang=EN-US>Lua:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">state-&gt;GetGlobals().Register("PrintNumber", LS_PrintNumber);<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这样就把</span><span lang=EN-US>LS_PrintNumber</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">映射为</span><span lang=EN-US>Lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中可以使用的函数</span><span lang=EN-US>PrintNumber.</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US>Test.lua</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">脚本中添加调用语句</span><span lang=EN-US>:</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="COLOR: blue">PrintNumber(30);<o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当</span><span lang=EN-US style="COLOR: blue">state-&gt;DoFile("test.lua");</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">执行的时候</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">就执行了</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中的这个函数</span><span lang=EN-US>.</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><strong style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 14pt; COLOR: red; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">总结</span></strong><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 14pt; COLOR: red"><o:p></o:p></span></strong></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">本文介绍了</span><span lang=EN-US>LuaPlus</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的基本配置方法和使用</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">希望对你有帮助</span><span lang=EN-US>.</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下一篇将介绍一些高级特性</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如怎样在</span><span lang=EN-US>VS</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中调试</span><span lang=EN-US>LuaPlus</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的脚本</span><span lang=EN-US>,</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">以及对类的操作等</span><span lang=EN-US>.<br></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt">如果还有任何疑问可以看看下面这个简单的例子:<span lang=EN-US><o:p><br>&nbsp;<a href="http://www.cppblog.com/Files/singohgod/LuaPlus_Test.rar">/Files/singohgod/LuaPlus_Test.rar</a></o:p></span></p>
<p>&nbsp;</p>
<img src ="http://www.cppblog.com/singohgod/aggbug/22069.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/singohgod/" target="_blank">大宝天天见</a> 2007-04-16 23:22 <a href="http://www.cppblog.com/singohgod/archive/2007/04/16/22069.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>