程序

C#生成随机数(循环生成不重复)

```c# public static int getRandomNum(int start, int end) { Random rnd = new Random(Guid.NewGuid().GetHashCode()); return rnd.Next(start, end); }

CCClippingNode无效的结果方法

最近使用了cocos2d-x的CCClippingNode做遮罩效果,在VS下编译可以出现效果,但是在安卓上毫无效果,发现网上也有人提出这个问题,先把方法记下来。 原帖地址:http://cocos2d-x.org/boards/6/topics/20141?r=20567#message-20567

for iOS:

in AppController replace the gl-view creation with:

EAGLView *__glView = [EAGLView viewWithFrame: [window bounds]
 pixelFormat: kEAGLColorFormatRGBA8
 depthFormat: GL_DEPTH24_STENCIL8_OES
 preserveBackbuffer: NO
 sharegroup: nil
 multiSampling: NO
 numberOfSamples: 0];

for Android:

in game activity:(在安卓项目的入口文件中)

public Cocos2dxGLSurfaceView onCreateView()
{
    Cocos2dxGLSurfaceView glSurfaceView = new Cocos2dxGLSurfaceView(this);
    glSurfaceView.setEGLConfigChooser(5, 6, 5, 0, 16, 8);
    return glSurfaceView; 
}

C++ char* 与 string 互相转换

string 是c++标准库里面其中一个,封装了对字符串的操作,可以与char*进行互相转换。

string 转 char*

1.

string str="abc"; 
char *p=str.data(); 

string的data()函数返回的字符串指针不会以'\0'结束,千万不可忽视。

2.

string str="gdfd"; 
char *p=str.c_str();

char* 转 string

对于C风格的字符串比如char*,char str[],转换为 string 可用"="直接进行赋值 如:

char* chstr;
char arstr[];
string str1 = chstr;
string str2 = arstr;