1.什么是assert

assert,中文翻译为断言,注意是一个宏定义,不是函数。
c++中,要使用assert,可以将cassert头文件include进来,而cassert最终是引用的assert.h。

assert的作用跟其他语言中是一样的,如果它里面的条件返回错误,代码会终止运行,并且会把源文件,错误的代码,以及行号,都输出来。

#include <cstdio>
#include<cassert>void func1() {int n = 2;assert(n==1);
}int main(int argc, char const *argv[])
{func1();return 0;
}

运行以上代码,会得到如下输出:

Assertion failed: (n==1), function func1, file tempCodeRunnerFile.cc, line 6.

2.停用assert

停用assert功能也很简单,只需要在源文件起始位置加上如下一行代码:

#define NDEBUG

以上即可。

c++中assert相关推荐

  1. python3 isinstance用法_对python中assert、isinstance的用法详解

    1. assert 函数说明: Assert statements are a convenient way to insert debugging assertions into a program ...

  2. vc中ASSERT()和VERIFY()区别

    vc中ASSERT()和VERIFY()区别 (2010-03-27 22:24:53) 转载▼ 标签: 杂谈   1  ASSERT与VERIFY宏在Debug模式下作用基本一致,二者都对表达式的值 ...

  3. java assert函数_assert函数-论java中assert函数和Python、PHP、C语言assert函数

    assert函数广泛在java.Python.PHP.C语言中存在,都有统一的意义,用业界语言称之为"断言".最初的出发点都是为了方便调试而设计的,但是最近越来越多的开发者不分测试 ...

  4. python中assert函数,一个实用的技巧

    Python中assert命令可用于判断该变量的值是否与预期的值一致 示范程序如下: a = 4 assert a==4 print("There is no mistake") ...

  5. Linux中assert头文件,linux系统下如何使用assert函数

    linux系统下如何使用assert函数 只要看得懂程序的人都知道assert,在Windows下使用VC编写,使用assert之后,只需在IDE中设置为debug版或者是release版,编译器就会 ...

  6. C++ 中assert()函数用法总结

    assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: 1 2 #include <assert.h> void asser ...

  7. 单元测试中Assert类的用法

    Assert类所在的命名空间为Microsoft.VisualStudio.TestTools.UnitTesting 在工程文件中只要引用Microsoft.VisualStudio.Quality ...

  8. C++工作笔记-C++中assert的作用

    原文地址:https://blog.csdn.net/gogokongyin/article/details/51114952 assert()这个函数在C++中用的比较少,但是有以次面试被问及到了, ...

  9. python中assert是什么意思,python中assert断言的用法

    >>> assert 1 == 0 Traceback (most recent call last): File "", line 1, in Assertio ...

  10. python中assert是什么意思_你常常看到 Python 代码中的 assert 是个啥?

    什么是 assert 呢?其实不止 Python ,很多主流的语言都有 assert ,它主要是用来检测调试你的代码问题,当你使用 assert 来检测你的代码的时候,如果是 True ,它就会直接通 ...

最新文章

  1. txt 乱码_STATA数据导入——将TXT、EXCEL、SAS、SPSS数据/批量导入STATA
  2. 在CentOS上安装Java环境—openjdk1.7 解决https配置问题
  3. 图解Linux命令实例
  4. NLP通用模型decaNLP诞生,一个模型搞定十大自然语言常见任务
  5. 趣链 BitXHub跨链平台 (7)应用链插件
  6. 开源oracle client,oracle client安装与配置
  7. java设计模式之设计原则④接口隔离原则
  8. why I cannot get any search result from P8F
  9. 用matlab建立控制系统的数学模型,第二章控制系统的数学模型.ppt
  10. ux设计中的各种地图_移动应用程序设计中的常见UX错误
  11. 在 Linux shell 中自由操作时间变量
  12. 数据库—事务—并发控制技术
  13. Qt 窗口置顶 | 和取消置顶
  14. HSPICE与非门仿真
  15. 异或为什么满足结合律,布尔代数与布尔环简介
  16. Opencv之给图片加水印
  17. Windows自带虚拟化服务工具Hyper-V学习了解和实操
  18. Mac安装MPV播放器
  19. MySQL 推荐书目
  20. L1-051 打折 (5 分) pta天梯赛 详解

热门文章

  1. ES5 对象的扩展(Object.preventExtensions)、密封(Object.seal)和冻结(Object.freeze)
  2. 初识 Powershell 5.0 class
  3. spring mvc异步操作处理,注解方式
  4. 正则表达式案例分析 (二)
  5. Linux stat
  6. GRIB格式转换心得(转自博客:http://windforestwing.blog.163.com/blog/static/19545412007103084743804/)...
  7. 利用Exchange 2003实现移动办公新体验
  8. 在阿里云上安装MongoDB,并且远程连接
  9. F5入口IP依据不同的端口实现转发到不同的POOL
  10. 极简网关认证方案:诞生于国科大的“认证博士”