ASSERT_VALID()与 ASSERT()异同
来源:互联网 发布:linux修改网卡ip地址 编辑:程序博客网 时间:2024/05/16 06:32
ASSERT()是MFC库中的断言,用法是ASSERT(布尔表达式). ASSERT宏用于确保参数内的表达式正确,如果表达式为false,则会显示一个消息对话框,其中有源文件的名字和当前行号,用户可以选择中断程序或进行调试.这个宏通常用于校验参数和返回值. ASSERT_VALID()也是MFC库中的断言,更确切点是ASSERT断言的变种,用法是ASSERT_VALID(一个从CObject类派生的对象指针),功能:检查这个指针是否有效。 以上两个宏均只在Debug版本中有效,与ASSERT相对应的是VERIFY.VERIFY宏在Debug版本中与ASSERT相同,在Release版本中仅执行参数表达式,不进行校验. 至于该怎么使用,如果你用MFC那么你可以用ASSERT()检查一个逻辑变量的合理性, ASSERT(pSysMenu);//检察pSysMenu是否为空
ASSERT_VALID强制调用参数对象(必须是CObject或CObject*)的AssertValid函数,该函数实现对象的内部一致性检查,当你创建一个可重用类时,应该重载这个函数(VC中缺少已经重载了该函数),你可以在该函数中进行必要的检查工作.
同样使用MFC,你在使用CObject派生类的对象之前你可以调用ASSERT_VALID()对其合法性进行检测.
ASSERT_VALID(pSysMenu); //指针是否有效
- ASSERT_VALID()与 ASSERT()异同
- ASSERT_VALID()与 ASSERT()异同
- TRACE()、ASSERT()、ASSERT_VALID()、Cobject::Dump()的作用
- assert,assert_valid,verify,trace
- ASSERT 和 ASSERT_VALID
- ASSERT_VALID和ASSERT宏分析
- ASSERT_VALID和ASSERT宏分析
- ASSERT_VALID和ASSERT宏分析
- ASSERT_VALID和ASSERT宏分析
- assert,assert_valid,verify,trace用法
- ASSERT_VALID和ASSERT宏分析
- ASSERT_VALID和ASSERT宏分析
- ASSERT_VALID和ASSERT宏分析
- ASSERT_VALID和ASSERT宏分析
- assert,assert_valid,verify,trace用法
- assert,assert_valid,verify,trace用法
- 断言函数assert()与ASSERT()
- ASSERT_VALID宏和ASSERT宏【学习笔记】
- 面向过程的C++
- 猴子分桃,带作弊均分
- Linux进程间的通信,信号量的使用,生产者消费者
- Duff's Device —— 一种优化的复制方法
- 提交表单时Webseal返回 Bad Request
- ASSERT_VALID()与 ASSERT()异同
- 毕业时刻
- 指针数组和数组指针
- Linux进程的创建和进程树
- 1.2Socket例子
- QQ2009、QQ2010、QQ2011远程攻击漏洞,详细使用方法。
- DataList 添加超链接项
- 将整型以二进制方式写入文件
- 如何解决db2 codepage导致连接不上数据库问题