加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos2dx 小技巧(六)断言CCAssert

发布时间:2020-12-14 17:11:30 所属栏目:百科 来源:网络整理
导读:CCAssert,也就是断言啦,当然了功能和断点也挺相似的。 使用断言可以创建更稳定,品质更好且不易于出错的代码 。具体用法看下面: [cpp] view plain copy CCAssert(cond,msg); //断言表达式cond为真,如果不为真,则显示字符串msg信息 下面举第一个例子: [c
CCAssert,也就是断言啦,当然了功能和断点也挺相似的。
使用断言可以创建更稳定,品质更好且不易于出错的代码。具体用法看下面:
[cpp] view plain copy
  1. CCAssert(cond,msg);//断言表达式cond为真,如果不为真,则显示字符串msg信息

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


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

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

[cpp] view plain copy
  1. autoboy=Sprite::create("boy.png");
  2. boy->setTag(1);//设置tag为1
  3. this->addChild(boy);
  4. autogirl=Sprite::create("girl.png");
  5. girl->setTag(2);//设置tag为2
  6. this->addChild(girl);
创建一个根据选取精灵的函数
[cpp] view plain copy
  1. voidswitchSp(intsp_tag)
  2. {
  3. switch(sp_tag)
  4. {
  5. case1:
  6. CCLOG("choosehumanisboy");//选择的是boy
  7. break;
  8. case2:
  9. CCLOG("choosehumanisgirl");//选择的是girl
  10. break;
  11. default:
  12. CCAssert(false,"choosetagshouldbe1or2");//两个都不是的情况使用断言
  13. break;
  14. }
  15. }

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读