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

大学同学会网站建设方案wordpress搭建的小程序

大学同学会网站建设方案,wordpress搭建的小程序,和wordpress类似的,网站关于页面文章目录前言assertstatic_assert前言 断言(Assertion)是一种常用的编程手段#xff0c;用于排除程序中不应该出现的逻辑错误。它是一种很好的Debug工具。其作用是判断表达式是否为真。C提供了assert和static_assert来进行断言。在C库中也有断言#xff0c;其中断言与C的相同… 文章目录前言assertstatic_assert前言 断言(Assertion)是一种常用的编程手段用于排除程序中不应该出现的逻辑错误。它是一种很好的Debug工具。其作用是判断表达式是否为真。C提供了assert和static_assert来进行断言。在C库中也有断言其中断言与C的相同静态断言是_Static_assert。 assert assert是一个仿函数宏用于程序在运行时进行断言。它在标头assert.h中定义 #ifdef NDEBUG #define assert(condition) ((void)0) #else #define assert(condition) #endif若编译为release版本编译器一般会定义NDEBUG则assert失效。若是在debug下assert 中的表达式若为假则 assert 在标准错误输出上输出实现指定的诊断信息并调用 std::abort 。 因为 assert 是仿函数宏在 condition 中未被括号保护的逗号都被转译成宏参数的分隔符。而assert只接受一个参数所以需要注意 assert(std::is_same_vint, int); // 错误 assert 不接收二个参数 assert((std::is_same_vint, int)); // 正确一个参数 static_assert(std::is_same_vint, int); // 正确非宏 std::complexdouble c; assert(c std::complexdouble{0, 0}); // 错误 assert((c std::complexdouble{0, 0})); // 正确 下面我们以一个字符串换成类作为示例代码在设置内容和打印内容的时候进行断言保证m_str分配了内存 #include assert.h #include string.h #include iostream using namespace std;class StrBuf{ private:char* m_str nullptr; public:void alloc_memory(int size){if(m_str nullptr)m_str new char[size];}void setbuf(const char* str){assert(m_str ! nullptr);strcpy(m_str,str);}void print(){assert(m_str ! nullptr);for(int i0;m_str[i]!\0;i)coutm_str[i];} };int main(){StrBuf sbuf;sbuf.alloc_memory(10);sbuf.setbuf(hello);sbuf.print(); }输出正常输出文本内容 hello如果我们将alloc_memory函数(分配内存)注释掉 int main(){StrBuf sbuf;//sbuf.alloc_memory(10);sbuf.setbuf(hello);sbuf.print(); }输出的内容如下运行时输出了断言结果并结束了程序 Assertion failed: m_str ! nullptr, file D:\SingleSources\CPP\8.cpp, line 15static_assert C11新增了静态断言static_assert它是内置的因此使用静态断言不需要包含头文件。与assert在运行时检查不同static_assert在编译阶段时检查源代码。 static_assert ( boolean expression, message ) //since C11 static_assert ( boolean expression ) //since C17示例静态断言一个为FALSE的表达式 constexpr bool getFalseExpr(){return false; }int main(){static_assert(getFalseExpr(),false expression); }编译时报错并输出了信息false expression 8.cpp: In function int main(): 8.cpp:6:31: error: static assertion failed: false expression6 | static_assert(getFalseExpr(),false expression);| ~~~~~~~~~~~~^~
http://www.hkea.cn/news/14319517/

相关文章:

  • 射阳住房和建设局网站长清网站建设费用
  • 做外文翻译的网站东莞今天发生的重大新闻
  • 无锡网站建设机构小型电子商务网站网页设计
  • 网站建设哪里有学建设厅网站账户名忘记了怎么办
  • 郑州建网站的公司wordpress页面顶部菜单
  • c 网站开发项目遵义公共资源交易中心电话
  • 网站被百度收录吗商业综合体
  • 做网站的第一步营销型网站建设步骤
  • 做策划有帮助的网站做网站对程序员说那些需求
  • 河南省汝州市文明建设门户网站网站设计岗位做哪些事情
  • 怎么查看网站百度快照wordpress阅读量
  • 有什么比较好的画册设计网站网站业务
  • 广州中国建设银行网站首页企业产品展示网站模板
  • 滨州制作网站php网站开发实战
  • 十堰响应式网站建设中建国际建设有限公司网站
  • 安徽省省博物馆网站建设杭州战争网站建设
  • 北京网站建设小鱼在线杭州手机网站建设
  • 石家庄专业做网站公司怎样做网络推广产品
  • 聊城网站制作需要多少钱跟黄聪学WordPress主题开发
  • 政务网站建设需求分析网站建设属于什么科目
  • 2014网站设计惠州seo排名收费
  • 做网站需要域名免费注册个人个人网站
  • 长春火车站需要核酸检测报告吗湖州网站建设服务公司
  • 邯郸网站设计怎么注册男女做爰视频网站
  • 国外网站用什么dns如何粘贴网站统计代码
  • 北京制作网站公司排名著名的营销成功的案例
  • 网站改版 如何改版广西网站建设liluokj
  • 免费建站手机百度app免费下载
  • 网站维护计划网站建设分为哪些方面
  • 建设厅网站关于建筑资质合并高校校园网站建设与运行