Cocos2dx 小技巧(六)断言CCAssert

这篇介绍的是让广告劳苦群众又爱又恨的CCAssert!

--------------------------------------

CCAssert,也就是断言啦,当然了功能和断点也挺相似的。
使用断言可以创建更稳定,品质更好且不易于出错的代码。具体用法看下面:
  1. CCAssert(cond, msg); // 断言表达式cond为真,如果不为真,则显示字符串msg信息  

下面举第一个例子:
  1. int i = 10;  
  2. CCAssert( i < 9,"i should small than 10");//不好意思,我英语是体育老师教的  
  3. //解释下上面这句,i<9就是断言表达式了,当i<9时表达式为true,程序继续运行,不会中断。当i>9,  
  4. //也就是上面写的i=10,这时候表达式为false,那么程序就会中断,然后抛出这句话:i should small than 10。  
下面运行下程序,如下图:


是的,你没看错,就是这个窗口。多少日日夜夜,多少风风雨雨,我们对着它发呆,对着它落泪,对着它傻笑...

下面第二个例子,其他和第一个差不多啦。

  1. auto boy = Sprite::create("boy.png");  
  2. boy->setTag(1);//设置tag为1  
  3. this->addChild(boy);  
  4.   
  5. auto girl = Sprite::create("girl.png");  
  6. girl->setTag(2);//设置tag为2  
  7. this->addChild(girl);  
创建一个根据选取精灵的函数
  1. void switchSp(int sp_tag)  
  2. {  
  3.     switch (sp_tag)  
  4.     {  
  5.     case 1:  
  6.         CCLOG("choose human is boy");//选择的是boy  
  7.         break;  
  8.     case 2:  
  9.         CCLOG("choose human is girl");//选择的是girl  
  10.         break;  
  11.     default:  
  12.         CCAssert(false,"choose tag should be 1 or 2");//两个都不是的情况使用断言  
  13.         break;  
  14.     }  
  15. }  

简单的解释下,如果传入的参数是1,则选择的是boy,如果是2,则选择girl,如果都不是,那么就报错。断言表达式用false或者0代替,则可直接中断程序。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值