当前位置: 首页 > wzjs >正文

好的网站建设商家免费浏览外国网站的软件

好的网站建设商家,免费浏览外国网站的软件,郑州网上车管所官网,网站ftp管理工具博主介绍:程序喵大人 35- 资深C/C/Rust/Android/iOS客户端开发10年大厂工作经验嵌入式/人工智能/自动驾驶/音视频/游戏开发入门级选手《C20高级编程》《C23高级编程》等多本书籍著译者更多原创精品文章,首发gzh,见文末👇&#x1f…

博主介绍:程序喵大人

  • 35- 资深C/C++/Rust/Android/iOS客户端开发
  • 10年大厂工作经验
  • 嵌入式/人工智能/自动驾驶/音视频/游戏开发入门级选手
  • 《C++20高级编程》《C++23高级编程》等多本书籍著译者
  • 更多原创精品文章,首发gzh,见文末
  • 👇👇记得订阅专栏,以防走丢👇👇
    😉C++基础系列专栏
    😃C语言基础系列专栏
    🤣C++大佬养成攻略专栏
    🤓C++训练营
    👉🏻个人网站

C/C++里,assert是一种比较常用的调试策略。

定义

assert字面意思是断言,用于判断是否满足某个条件,如果不满足某个条件,则程序会直接崩溃,控制台上会显示崩溃所在的文件名和行号。

看下它的使用:

#include <assert.h>
#include <stdio.h>void func(int a) {assert(a > 0);printf("%d", a);
}int main() { func(-1); }

示例中我用assert来表示函数func的输入一定要>0

我如果输入了-1,程序运行时会在assertcrash,同时提供了报错的详细:

a.out: test.cc:5: void func(int): Assertion `a > 0' failed.Aborted

注意事项:

我们一定在assert处只做判断,不要添加任何功能逻辑,因为assert只在debug模式下有作用release模式下,assert这行代码会自动跳过去,会自动被忽略。

assert(++i > 0);

这种改变了i状态的assert代码千万不要写,因为会导致debug模式和release模式下的行为不一致。

什么时候使用assert

期望某块逻辑一定要满足某个前置条件,如果不满足就要crash,这方便于我们在debug模式下调试程序,如果crash,方便我们进一步修复问题,使其满足assert条件。

比如我们要输出某个字符串,做一次判空其实也是耗费性能的,我们期望传进来的串一定非空,如果是空,那就直接crash

void func(const char* s) {printf("hello %s \n", s);
}

static_assert

上面的assert运行时断言,C++11之后还有个编译时断言:static_assert,用于在编译时判断某些条件,如果断言失败,则会编译失败,用法和assert类似。

#include <type_traits>
constexpr int k = 120;
int main() { static_assert(k > 200, "k < 200"); }

输出:

test.cc:8:14: error: static_assert failed due to requirement 'k > 200' "k < 200"int main() { static_assert(k > 200, "k < 200"); }
^             ~~~~~~~1 error generated

static_assert后面可以跟着一个字符串,在断言失败时,会在控制台输出此字符串,方便提示我们相关信息。

练习

  • static_assert还有很多作用,比如可以判断某个类是否有默认构造函数,某个函数是否是noexcept等,可以自己尝试一下。
http://www.dtcms.com/wzjs/304950.html

相关文章:

  • java做网站赚钱太原百度关键词优化
  • 网站自适应尺寸百度推广网站
  • 房地产公司网站开发做销售怎样去寻找客户
  • 四川建设厅网站 蒋seo优化方案报价
  • 深圳微信网站公司哪家好seo外包网络公司
  • wordpress插件 二次开放网站seo好学吗
  • 企业网站营销如何建设世界杯比分查询
  • 什么是内容管理系统安卓优化大师官方版
  • 学平面设计的网站针对本地的免费推广平台
  • 兰州做网站怎么样网络推广培训班
  • 免费1级做爰片在线观看 历史网站seo站长工具是什么
  • java 框架用来做网站免费学生html网页制作成品
  • 成都市金堂县网站建设厦门小鱼网
  • 张家港市凤凰镇建设局网站数据分析培训机构哪家好
  • 塘厦镇做网站站内推广方案
  • 用淘宝域名做网站什么效果360排名优化工具
  • 博彩类网站怎么做日本粉色iphone
  • 相亲网站源码php模版自己如何优化网站排名
  • 品牌网站建设 app建设seo排名赚app下载
  • 北京电力交易中心seo排名优化首页
  • 化妆品可做的团购网站有哪些服装市场调研报告范文
  • 北京商城网站建设报价自媒体平台注册官网下载
  • 做网站的意义百度seo排名培训优化
  • 免费空间做自己的网站app拉新推广一手接单平台
  • 建设红外测温仪网站贵州整站优化seo平台
  • 自己做网站 做什么好怎么做一个公司网站
  • 专业长春网站建设工作室深圳网站设计公司
  • 网站设计咨询网站核心关键词是什么意思
  • 高端自适应网站开发俄罗斯搜索引擎yandex官网入口
  • 侗族网站建设常州seo建站