第一步:去lua官网下载lua最新源码http://www.lua.org/ftp/ 然后解压


解压后得到



第二步:将源代码编译成静态库


打开VS2013创建一个win32控制台应用程序


点击下一步设置为静态库,空项目,去掉预编译头


将解压出来的lua-5.3.4目录下的src文件中的头文件和源文件添加到项目中


最后点击生成解决方案


在项目目录lua5.3/Debug下面我们可以看到.lib文件

我们将.lib文件拷贝到lua-5.3.4目录下备用


第三步:创建一个新的win32控制台应用程序,不需要去掉预编译头和设置空项目


接下来在c++中使用lua有两种方式


方法一:
a) 在项目属性 > 配置属性 > C/C++ > 常规 > 附加包含目录添加lua源代码所在目录


b) 在项目属性 > 配置属性 >连接器 > 常规 > 附加库目录添加lua5.3.lib所在目录


c) 在项目属性 > 配置属性 >连接器 > 输入 > 附加库依赖项写入 lua5.3.lib;

方法一测试:

在源文件中新建项源文件取名为test.lua

写入print(“hello world”)

c++测试代码如下

#include "stdafx.h"
#include <iostream>
#include "lua.hpp"
using namespace std;int _tmain(int argc, _TCHAR* argv[])
{lua_State *L = luaL_newstate();luaL_openlibs(L);if (luaL_dofile(L, "test.lua")){luaL_error(L, "cannot dofile main.lua");}system("pause");return 0;
}

获得结果


方法二:

b) 右击解决方案 > 添加现有项目 > 将lua5.3工程添加进来

b) 在项目属性 > 配置属性 > C/C++ > 常规 > 附加包含目录添加lua源代码所在目录


c) 在项目属性 > 通用属性 >引用 > 添加新引用 > 勾上lualib

测试方法与上述相同,方法二方便查看源代码,利于学习

VS2013使用lua5.3教程(两种方式)相关推荐

  1. 【REACT NATIVE 系列教程之十三】利用LISTVIEW与TEXTINPUT制作聊天/对话框获取组件实例常用的两种方式...

    本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/react-native/2346.html ...

  2. Spring系列教程八: Spring实现事务的两种方式

    2019独角兽企业重金招聘Python工程师标准>>> 一. Spring事务概念: 事务是一系列的动作,它们综合在一起才是一个完整的工作单元,这些动作必须全部完成,如果有一个失败的 ...

  3. Unity3D教程:播放视频的两种方式

    Unity3D中播放游戏视频的方式有两种,第一种是在游戏对象中播放,就好比在游戏世界中创建一个Plane面对象,摄像机直直的照射在这个面上.第二种是在GUI层面上播放视频.播放视频其实和贴图非常相像, ...

  4. Express全系列教程之(四):获取Post参数的两种方式

    一.关于POST请求 post方法作为http请求很重要的一部分,几乎所有的网站都有用到它,与get不同,post请求更像是在服务器上做修改操作,它一般用于数据资源的更新. 相比于get请求,post ...

  5. Dagger2 知识梳理(1) Dagger2 依赖注入的两种方式

    一.资料推荐 最近这几天一直在看有关Dagger2有关的文章,感觉就是这东西真难用.真难懂,数次想要放弃,还好有网上大神的教程帮助,模模糊糊总算能把基本的几个概念跑通了. 这里首先推荐 牛晓伟 的下面 ...

  6. [Java] HashMap遍历的两种方式

    Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml 第一种: Map map = new HashMap ...

  7. python接口服务两种方式(被调用、主动推送)

    项目中用python开发,要对外接口时,根据场景不同,一般有两种方式: 外部调用python接口,返回数据 接口主动向外部推送数据 1外部调用python接口,返回数据 这种方式一般可以通过http接 ...

  8. server2008 sql 账号只读权限_SQL Server 2008数据库创建用户只读权限的两种方式(转载)...

    最优秀的解决方案: https://www.cnblogs.com/hao-1234-1234/p/12699185.html 其它相关文章: 一.命令行方式创建 新建查询窗口,然后输入以下命令然后执 ...

  9. Java中HashMap遍历的两种方式

    第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Ma ...

最新文章

  1. c4d打开没反应_掌握这3种C4D技巧,线框渲染效果图也就几秒的事
  2. js word 预览_微软补丁日:Word/DHCP/LNK远程代码执行漏洞预警
  3. LeetCode Algorithm 1290. 二进制链表转整数
  4. C#枚举、值、字符串的相互转换
  5. 网络数据包收发流程(四):协议栈之packet_type
  6. mysql数据库之事务与存储过程
  7. 2g 双核电脑 linux,9208)(奔腾双核E5200/2G/320G)电脑详细技术
  8. 工作六年 我终于学会了这项技能 可惜晚了!!!
  9. 【C++】n_element的用法
  10. Hector代码笔记
  11. 2018年高考631选计算机,2021年高考650分可以上什么大学 650分左右的院校
  12. php 分针和时针重合,分针和时针每天重合多少次?
  13. zoom怎么解除静音_Zoom参会者入会后的注意事项
  14. 精密电阻(1%) -- 贴片电阻常用标示方法(转载)
  15. CF909B Segments
  16. Win7系统解决无法打开任务管理器
  17. 边做边爱(1)——mapbox做分析图
  18. linux ifort编译命令,[Linux] icc与ifort编译器
  19. 计算机应用技术高数学几本书,高一下学期数学学必修几 学哪几本书
  20. Python下载echo歌曲

热门文章

  1. 攻防世界upload1解题过程
  2. Ruby alias 语句
  3. 关于eclipse的TestNG的插件安装方法
  4. 怎么黑白照片变成彩色?这些方法值得你收藏起来
  5. 在线支付系列【18】微信支付实战篇之集成账单相关API
  6. vscode指定文件的编辑语言以及编码方式
  7. fei33423 工作 职场 格言
  8. ubuntu下载安装TeamViewer
  9. 应用程序正常初始化(0xc0000135)失败解决方法
  10. 天猫店做店群有风险吗?互联网项目天猫店群还能做多久?