cocos2d-x3.2中将XCode发展project转移到VS2010可能会发生错误
一些代码在线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可能会发生错误的更多相关文章
- Xcode删除Project上层group
本来想在Project下New Group,结果点了New group from selection, 结果在Project上级新建了一个group,邮件菜单中无删除项…… 解决方法: 1,关闭Xco ...
- Xcode一个project多个target
project添加target https://blog.csdn.net/vbirdbest/article/details/53466009 https://www.cnblogs.com/Bob ...
- Xcode一个project生成多个App
网上有很多奇奇怪怪的复杂的方案,其实误导了,方法很简单: 打开项目属性 修改Bundle Identifiler 随便生成了四个App,如下所示:
- Xcode编译WebApps找不到js的错误解决办法<转>
使用Xcode做WebApps时,使用UIWebview来调用一个页面,有时会遇到问题,其一就是编译的时候出现黄色感叹号的Warning,js文件都报错:warning: no rule to pro ...
- Xcode解决代码高亮、语法提示、错误警告等功能失效的解决方法
在编写xcode的项目的时候出现过代码不高亮的症状,而且所有的warning都不再提示,include的内容也显示symbol not found,非常奇怪,解决方案如下: 方法一: 1.把.pch里 ...
- Xcode中 xx duplicate symbols for architecture i386错误提示
今天在编译iOS项目时Xcode报如下错误: ld: 15 duplicate symbols for architecture i386 clang: error:linker command fa ...
- (转)xcode报Could not find a storyboard named...错误的解决办法
首先确定是否有用到storyboard 如果没有用到的话,需要将涉及到storyboard的地方修改: 1 删除plist文件里的设置 2 修改程序中使用到storyboard的地方 如果确实有使用s ...
- 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 ...
- 创建Maven project 提示pom.xml 首行错误
背景 使用eclipse创建Maven SpringBoot 2.2.0 项目时报错,更换springboot 版本也不行,排除框架依赖原因.然后别人的eclipse创建的同样2.2.2 maven项 ...
随机推荐
- SharePoint 2013 添加Ribbon菜单
原文:SharePoint 2013 添加Ribbon菜单 前言:今天,我们尝试一下添加SharePoint2013的Ribbon菜单,这个Ribbon菜单是由XML定义,JavaScript脚本来实 ...
- SQL操作语句中的注意点
一 查询语句 1 distinctkeyword消除反复行 当查询的结果数据中出现反复数据时.在查询条件中加上distinctkeyword消除反复行: 如:select distinct Sno f ...
- 添加和删除行的能力table(能够编辑的表的内容)
页面文件 <html> <head> <meta http-equiv="Content-Type" content="text/html; ...
- 阐述linux IPC(两):基于socket进程间通信(下一个)
[版权声明:尊重原创.转载请保留源:blog.csdn.net/shallnet 要么 .../gentleliu,文章学习交流.请勿用于商业用途] 其中两个进程通信,有两个过程,以彼此的过程 ...
- BNUOJ 34981 A Matrix
BNUOJ 34981 A Matrix 题目地址:pid=34981" style="color:rgb(0,136,204); text-decoration:none&quo ...
- JSP具体条款——response对象
response对象 response为响应对象client要求.输出信息到客户.他封装JSP反应生成.发送client在回应client要求. 1.重定向网页 使用response对象的sendRe ...
- 项目中经常使用的JS方法汇总,非常有用
// 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1- ...
- Android开发之控制Toast的开启与关闭
开发这个程序之前先解释一下,为什么Toast信息提示框在显示一定时间后会自己主动消失?由于在Android系统中有一个Toast队列,系统会依次从这个队列中取出一个Toast,并显示它.在显示了指定时 ...
- TCP连接状态
TCP 连接状态按 TCP 协议的标准表示法, TCP 可具有如下几种状态,为讨论方便,如下讨论中区分服务端和客户端,实际软件处理上对二者一视同仁. CLOSED关闭状态.在两个通信端使用“三路握手” ...
- AIX加入能telnet远程连接方法的帐户
AIX 加入该账户可以使用命令mkuser 和 SMIT 两种方法,这里有SMIT方式 1.采用root 帐户登录AIX 2.输入 smitty user 3.选择Add a User 4.输入&qu ...