cocos2d-x 3.3之学习

来源:互联网 发布:淘宝卖家货源 编辑:程序博客网 时间:2024/05/21 10:31

一、随机函数种子

float CalDetection::myRand_0_1()

{
time_t tt;
time(&tt);
struct tm * now;
//获得本地时间//
now = localtime(&tt);
timeval tv;
gettimeofday(&tv,NULL);
unsigned long reed = tv.tv_sec*1000+tv.tv_usec/1000;
srand(reed);
return CCRANDOM_0_1();

}

运用:

myRand_0_1()*(end-start+1)+start;从start到end


二、有时也会自己写一些界面上面的东西,那么,记得

#include "cocos-ext.h"
#include "editor-support/cocostudio/CCSGUIReader.h"
#include "cocostudio/CocoStudio.h"
#include "ui/CocosGUI.h"
#include "CalDetection.h"

using namespace cocos2d::extension;
using namespace cocos2d::ui;
using namespace cocostudio;

这几个头文件,同时在属性---c++附加包含目录中加上:$(EngineRoot)

这样就可以很好的运用例如Button之类的控件了。


三、一般遇见

看起来像函数定义,但没有参数列表;跳过明显的函数体”的问题多半是代码中含有中文字符。


四、一般读取位置xxxxxx发生冲突

      这种错误一般是指访问了不属于自己的内存空间。出现这种错误有几种原因:

1、给一个数组分配了比较小的内存空间,然后又给该数组赋了一个比较大的值,举例说明:
char buf[10];   
buf = "C++“读取位置 0x****** 时发生访问冲突”的可能原因C++“读取位置 0x****** 时发生访问冲突”的可能原因";  
这样才访问buf的时候,就会出现错误

解决方法:给数组分配更大一些的内存空间,如char buf[1000];

2、句柄或指针在使用前被释放

解决方法:检查代码配合调试,揪出野指针

分析:
内存冲突问题经常发生于用malloc等进行内存分配后指针的使用。 CC++中的指针,其优势很明显,灵活,方便,使用起来简单;劣势当然也很明显,就是容易导致系统崩溃,指针操作不当,或没有及时释放,或没有判断指针是否越界,或没有及时置空,这些都很容易导致系统崩溃,所以使用指针一定要考虑严谨



五、函数返回数组,并在另一个函数中调用他。(注意:其中返回的都是指针)int flag[7][7];

int (*getflag())[7]

{

return flag;

}

 

int fg[7];

int *getfg()

{

return fg;

}



0 0
原创粉丝点击