一些代码在线xcode写。我们希望我们自己的屌丝vs上述的实施,要重新构建它project,然后加载。但是绝对

没想到在VS里新建project再加入文件,编译后出现了好多错误。以下就把解决这些错误的方法写下来,与大家分享。

1.

首先要把文件格式用文本文件另存为Unicode格式,不然VS会报一些莫名其妙的错误。

2.

VS里不能用bzero函数,改为memset.

XCode:

//bzero(fileName, MAX_FILENAME_LENGTH); 改为:

VS:

memset(fileName, 0,MAX_FILENAME_LENGTH);

3.

XCode:

//_fade_in_outSprite->setBlendFunc((ccBlendFunc){GL_ONE,GL_ONE});

VS:

将上面的代码拆分为两部分

ccBlendFunc tempBlend = {GL_ONE, GL_ONE};

_fade_in_outSprite->setBlendFunc(tempBlend);

4.

获取随机数的函数改为srand()和rand()

XCode:

//arc4random()%6;

VS:

srand(time(NULL));

type = rand()%6;

改动完上面的问题之后,编译成功,游戏成功的执行了起来。

可我还没来的及高兴,问题就又来了。

我刚移动程序里的精灵,就弹出了一个执行时错误,类指针产生了偏移,很诡异。

我的心情顿时又跌入了谷底……但天无绝人之路。我发现了一条奇怪的警告:“cast between different pointer to member representations, compiler may generate incorrect code。

”我google了一下,在这里找到了解决方法:http://msdn.microsoft.com/en-us/library/1s6193tt.aspx
于是。我依照文中所说将相关的精灵类(DiamondSprite)的基类继承顺序颠倒了一下:

XCode:

//classDiamondSprite : public cocos2d::CCObject, public cocos2d::SelectorProtocol { 改为:

VS:

class DiamondSprite : publiccocos2d::SelectorProtocol, publiccocos2d::CCObject{

编译执行,果然没有再次出现执行时错误。至此,我们已经成功的将project从XCode转入VS中。

本人cocos2dx 2.x和3.x的源代码淘宝地址(欢迎大家光顾):http://shop115423056.taobao.com/?spm=2013.1.1000126.d21.dMbdyb

我不明白的可以加QQ组: 239982941(cocos2d-x 3.x学习小组)哦,欢迎您的到来,博文看到了脚印呗点,谢谢~~

cocos2d-x3.2中将XCode发展project转移到VS2010可能会发生错误的更多相关文章

  1. Xcode删除Project上层group

    本来想在Project下New Group,结果点了New group from selection, 结果在Project上级新建了一个group,邮件菜单中无删除项…… 解决方法: 1,关闭Xco ...

  2. Xcode一个project多个target

    project添加target https://blog.csdn.net/vbirdbest/article/details/53466009 https://www.cnblogs.com/Bob ...

  3. Xcode一个project生成多个App

    网上有很多奇奇怪怪的复杂的方案,其实误导了,方法很简单: 打开项目属性 修改Bundle Identifiler 随便生成了四个App,如下所示:

  4. Xcode编译WebApps找不到js的错误解决办法<转>

    使用Xcode做WebApps时,使用UIWebview来调用一个页面,有时会遇到问题,其一就是编译的时候出现黄色感叹号的Warning,js文件都报错:warning: no rule to pro ...

  5. Xcode解决代码高亮、语法提示、错误警告等功能失效的解决方法

    在编写xcode的项目的时候出现过代码不高亮的症状,而且所有的warning都不再提示,include的内容也显示symbol not found,非常奇怪,解决方案如下: 方法一: 1.把.pch里 ...

  6. Xcode中 xx duplicate symbols for architecture i386错误提示

    今天在编译iOS项目时Xcode报如下错误: ld: 15 duplicate symbols for architecture i386 clang: error:linker command fa ...

  7. (转)xcode报Could not find a storyboard named...错误的解决办法

    首先确定是否有用到storyboard 如果没有用到的话,需要将涉及到storyboard的地方修改: 1 删除plist文件里的设置 2 修改程序中使用到storyboard的地方 如果确实有使用s ...

  8. IDEA里运行程序时出现Failed to execute goal org.scala-tools:maven-scala-plugin:2.15.2:compile(default) on Project DataFusion:wrap:org.apache.commons...错误的解决办法(图文详解)

    不多说,直接上干货! 问题详情 比如我们习惯在IDEA里打包用mvn clean package 在Scala IDEA for eclipse里出现mvn clean compile assembl ...

  9. 创建Maven project 提示pom.xml 首行错误

    背景 使用eclipse创建Maven SpringBoot 2.2.0 项目时报错,更换springboot 版本也不行,排除框架依赖原因.然后别人的eclipse创建的同样2.2.2 maven项 ...

随机推荐

  1. SharePoint 2013 添加Ribbon菜单

    原文:SharePoint 2013 添加Ribbon菜单 前言:今天,我们尝试一下添加SharePoint2013的Ribbon菜单,这个Ribbon菜单是由XML定义,JavaScript脚本来实 ...

  2. SQL操作语句中的注意点

    一 查询语句 1 distinctkeyword消除反复行 当查询的结果数据中出现反复数据时.在查询条件中加上distinctkeyword消除反复行: 如:select distinct Sno f ...

  3. 添加和删除行的能力table(能够编辑的表的内容)

    页面文件 <html> <head> <meta http-equiv="Content-Type" content="text/html; ...

  4. 阐述linux IPC(两):基于socket进程间通信(下一个)

    [版权声明:尊重原创.转载请保留源:blog.csdn.net/shallnet 要么 .../gentleliu,文章学习交流.请勿用于商业用途]     其中两个进程通信,有两个过程,以彼此的过程 ...

  5. BNUOJ 34981 A Matrix

    BNUOJ 34981 A Matrix 题目地址:pid=34981" style="color:rgb(0,136,204); text-decoration:none&quo ...

  6. JSP具体条款——response对象

    response对象 response为响应对象client要求.输出信息到客户.他封装JSP反应生成.发送client在回应client要求. 1.重定向网页 使用response对象的sendRe ...

  7. 项目中经常使用的JS方法汇总,非常有用

    // 对Date的扩展,将 Date 转化为指定格式的String   // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符,   // 年(y)可以用 1- ...

  8. Android开发之控制Toast的开启与关闭

    开发这个程序之前先解释一下,为什么Toast信息提示框在显示一定时间后会自己主动消失?由于在Android系统中有一个Toast队列,系统会依次从这个队列中取出一个Toast,并显示它.在显示了指定时 ...

  9. TCP连接状态

    TCP 连接状态按 TCP 协议的标准表示法, TCP 可具有如下几种状态,为讨论方便,如下讨论中区分服务端和客户端,实际软件处理上对二者一视同仁. CLOSED关闭状态.在两个通信端使用“三路握手” ...

  10. AIX加入能telnet远程连接方法的帐户

    AIX 加入该账户可以使用命令mkuser 和 SMIT 两种方法,这里有SMIT方式 1.采用root 帐户登录AIX 2.输入 smitty user 3.选择Add a User 4.输入&qu ...