• cocos ide使用binding-generator导出来的c++类


    time:2015/03/19

    cocos版本:3.2

    描述:用了ide运行一个实例[1]的时候需要增加c++类,正确导出来之后,直接使用vs2012启动是没有问题的,但是使用ide启动却提示找不到模块

    学习:

    (1)使用3.2自带的tolua把自定义类导出来,并作为一个模块添加到lua环境中,参考[2],不多说了。

    (2)使用

    * 使用vs2012直接启动没有问题

    * 使用ide直接启动,提示找不到模块

    解决:

      把ide的启动程序换成vs2012编译的exe就可以了。

    * 项目-->属性中最后一个 --> "运行/调试设置" -->双击右边打开启动配置

    * win7/win8 -->runtime路径中修改PrebuiltRuntimeLua.exe为你自己的编译的exe

    总结:
    (1)启动程序的实质只是提供了一个跨平台的启动入口,另外做的一件事情就是构建了lua的环境,同时把我们自定义的类作为一个模块加到lua环境中

    (2)如此说来,直接启动vs2012是没有问题的,因为从main.cpp到AppDelegate.cpp执行一遍,就会运行到自己加的注册模块函数,所以自己添加的模块就自然在lua环境里面了

    (3)但是,ide根本就不需要工程下面的frameworks下面的runtime-src,从创建新lua工程就看到,一开始可以不选生成c++代码

    (4)所以说,其实默认的PrebuiltRuntimeLua.exe程序和我们自己生成的.exe是一样的东西,但是我们自己生成的exe还包含了我们自定义c++类的模块注册到lua环境的代码,而且这才是我们想要的

    (5)over!

    参考:

    [1]http://cn.cocos2d-x.org/tutorial/show?id=1998

    [2]http://my.oschina.net/guyson/blog/338375

  • 相关阅读:
    一种想法
    识别link_text
    识别name
    识别id
    文件的读写
    条件和循环
    网站测试-功能测试小结
    拷贝
    #团队博客作业1-小组成员介绍
    软件测试基础-Homework1
  • 原文地址:https://www.cnblogs.com/pk-run/p/4350500.html
Copyright © 2020-2023  润新知