关于Cocos2d-x很多奇怪的报错
1.说什么找不到类和命名空间,但是已经包含头文件
项目-属性-配置属性-C/C++-附加包含目录-编辑-添加新行-写上$(EngineRoot)
2.很多语句报错,但是都没问题
我是这样理解的,书上的代码的编码格式是UTF-8,而我们新建的cocos2d-x的解决方案是用GKB编码打开的,如果直接把文件拷贝过去,文件的编码和解决方案(整个环境)的编码不对,这时候编译起来就会各种错误。
文件-高级保存选项-保存为UTF-8有签名的页面
每个文件的编码格式要一样,不然会报错
其实更好的做法是
文件-高级保存选项-保存为UTF-8无签名的页面,行尾-Windows(CR LF),这么做可以顺便解决中文乱码问题。
3.很多语句莫名其妙报错
可能在一些.h文件里面忘记写USING_NS_CC;
或者一些头文件忘记包含了。
4.某个自己定义的类有红线
这个类可能和系统的类名重复了,改个名字就可以了
5.Cocos2d-X的3.0以后的版本
ccTouchesBegan要改为onTouchesBegan
ccTouchesMoved要改为onTouchesMoved
ccTouchesEnded要改为onTouchesEnded
6.Cocos2d-X的3.0以后的版本
要把CCLayer之类的父类改为Layer
要把CCNode之类的父类改为Node
7.Cocos2d-X的3.0以后的版本
CCSizeMake要改为Size
8.Cocos2d-X的3.0以后的版本
AppDelegate.cpp里面的applicationDidFinishLaunching方法要这样定义
bool AppDelegate::applicationDidFinishLaunching() {
// initialize director
auto director = Director::getInstance();
auto glview = director->getOpenGLView();
if(!glview) {
glview = GLViewImpl::createWithRect("See", Rect(0, 0, 960, 640));
director->setOpenGLView(glview);
}
director->getOpenGLView()->setDesignResolutionSize(960, 640, ResolutionPolicy::SHOW_ALL);
// turn on display FPS
director->setDisplayStats(true);
// set FPS. the default value is 1.0/60 if you don't call this
director->setAnimationInterval(1.0 / 60);
FileUtils::getInstance()->addSearchPath("res");
// create a scene. it's an autorelease object
auto scene = HelloWorld::createScene();
// run
director->runWithScene(scene);
return true;
}
8.Cocos2d-X的3.0以后的版本要把资源放在Resources文件夹下的Res目录里面,或者直接放在Resources文件夹的根目录下并且根目录下不能有Res文件夹
是受了AppDelegate.cpp里面的applicationDidFinishLaunching方法的这句话的影响
FileUtils::getInstance()->addSearchPath("res");
9.可能是已经在.h文件中定义类型的变量,在.cpp中又用auto定义了一遍,这个会造成系统输出:读取位置 0x0000039C 时发生访问冲突等错误,有时候也会造成运行游戏项目的时候弹出停止运行的框框。
.h文件中
Sprite *confirm;
.cpp文件中
auto confirm = Sprite::create();
解决方法:
去掉多余的auto关键词
关于Cocos2d-x很多奇怪的报错的更多相关文章
- python学习之路之int()奇怪的报错
今天闲来无事看了下python基础知识,当学到数据类型转换的int()方法时候.发现了这么一个有意思的事情,算是IDE或是解释器的一个小BUG.(具体原因暂不明,留待以后查找问题) 先讲下环境 操作系 ...
- AndroidStudio奇怪的报错
Android Studio升级到3.5之后,经常无故报错a problem occurred configuring project ' app'. java.lang.nullpointerexc ...
- CRM 插件奇怪的报错
CRM插件,数据库方式注册.报错 找不到方法:“Void Microsoft.Xrm.Sdk.Entity..ctor(System.String, System.Guid)”. 这个错误让人摸不着头 ...
- IE奇怪报错
IE会有一些奇怪的报错信息,总结如下: 1. ”缺少对象” 这个报错从字面看还以为是那个object对象出了问题,经过调试才发现原来是有一个未定义的方法执行时,会报这个错误.
- ASP.NET MVC 3 入门级常用设置、技巧和报错
1.ASP.NET MVC 3 如何去除默认验证 这个默认验证是在web.config配置文件中设置的 <add key="ClientValidationEnabled&quo ...
- Jpa自定义查询报错(Failed to convert from type [java.lang.Object[]] to type)
Jpa自定义查询报错 问题背景 今天遇到一个奇怪的报错"Failed to convert from type [java.lang.Object[]] to type",这个报错 ...
- Egret项目Typescript的编译报错
今天编译项目,出现了一个奇怪的报错,如下: E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41531 1> if (fil ...
- NET MVC 升级到5.1后,View视图中代码报错
使用nuget将项目中MVC4 升级到MVC5,之后项目还可以正常编译运行, 但View视图中相关的很多代码都报错,比如: 1.@model找不到 2.@Html找不到,本该是System.Web.M ...
- 遇到个奇怪的问题,同时开启本地和远程两个事务,远程事务是sql2000没问题,是sql2008的不报错,但是写不上数据
遇到个奇怪的问题,同时开启本地和远程两个事务,远程事务是sql2000没问题,是sql2008的不报错,但是写不上数据. 倒腾了4.5天,找到最终的解决办法:直接调用AdoConnection.exe ...
随机推荐
- socket 请求接收完整的一个http响应(设置recv 接收超时选项SO_RCVTIMEO)
在前面的系列网络编程文章中,我们都是使用socket 自己实现客户端和服务器端来互相发数据测试,现在尝试使用socket 客户端发 送http 请求给某个网站,然后接收网站的响应数据.http 协议参 ...
- malloc的内存分配原理
0 堆内存的在计算机内存中的形式 根据<The C Programming language>推测得到堆内存,图中的Heap区域即为堆内存块(Heap区域的数目不代表计算机堆内存的真实数目 ...
- MAC 上搭建lua
下载和安装lua:(转自这里) 1. 下载最新版的lua-5.3.1.tar.gz 请点击(http://www.lua.org/ftp/),然后解压 2. 执行"终端"进入到 ...
- Python isnumeric() 方法
描述 Python isnumeric() 方法检测字符串是否只由数字组成.这种方法是只针对unicode对象. 注:定义一个字符串为Unicode,只需要在字符串前添加 'u' 前缀即可,具体可以查 ...
- 以太网帧格式、IP数据报格式、TCP段格式+UDP段格式 详解
转载:http://www.cnblogs.com/lifan3a/articles/6649970.html 以太网帧格式.IP数据报格式.TCP段格式+UDP段格式 详解 1.ISO开放系统有 ...
- struts2 页面标签或ognl表达式取值--未完待续
一.加#号取值和不加#号取值的解说 1.s:property 标签——value属性使用事项 1)涉及问题:取值时什么时候该加#,什么时候不加? 2)介绍 <s:property value=& ...
- wavwrite注意事项
前几天群里有人提出一个问题:MATLAB里,同样频率的信号写入/读取,为什么频率感觉不同? 测试code: fs = 2000; f0 = 20; t = 0:1/fs:1; subplot 211 ...
- Redis 实现队列优先级
通常使用一个list来实现队列操作,这样有一个小限制,所以的任务统一都是先进先出,如果想优先处理某个任务就不太好处理了,这就需要让队列有优先级的概念,我们就可以优先处理高级别的任务. 实现方式: (1 ...
- Socket tips: 同意socket发送UDP Broadcast
假设创建一个UDP Socket: socketHandle = socket(serverAddr->ai_family, serverAddr->ai_socktype, server ...
- SourceInsight-Symbol not found
使用SourceInsight查看源代码时,发现点击查看相关类型时,无法关联到其代码,出现 symbol not found, 然而明明在我的头文件有定义的 网上查了一下主要是因为新建工程导入文件后, ...