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

中山手机网站建设电话西安巨久科技网站建设

中山手机网站建设电话,西安巨久科技网站建设,淘宝网站建设特点,网站做qq链接文章目录前言弃值表达式nodiscard标记符函数非弃值声明类/枚举类/结构 非弃值声明返回类引用与类指针前言 在C 17中引入了一个标记符nodiscard#xff0c;用于声明一个 “非弃值(no-discard)表达式”。那么在开始之前#xff0c;我们需要了解一下什么是弃值表达式。 弃值表… 文章目录前言弃值表达式nodiscard标记符函数非弃值声明类/枚举类/结构 非弃值声明返回类引用与类指针前言 在C 17中引入了一个标记符nodiscard用于声明一个 “非弃值(no-discard)表达式”。那么在开始之前我们需要了解一下什么是弃值表达式。 弃值表达式 弃值表达式就是放弃获取返回值的表达式。首先弃值表达式的返回值是非void类型的。一般我们使用的弃值表达式其返回值只是起次要的作用而其本身的作用占主要。比如i;就是一个弃值表达式它的主要作用就是累加但同时我们也可以选择获取其累加的返回值只不过这是次要的。 再比如C标准库的文件写入函数其声明如下 int __cdecl fputs(const char * __restrict__ _Str,FILE * __restrict__ _File);它有一个int类型的返回值用于获取写入状态它的主要作用是写入文件我可以选择不获取状态也可以选择获取状态 fputs(Hello World,pFile); int result fputs(Hello World,pFile);nodiscard标记符 那么我如果想向用户建议获取返回值这时候我就可以使用nodiscard标记符。它一般用于标记函数的返回值或者某个类。声明语法为 /* since C17 */ [[nodiscard]] return_type function(); /* since C20 */ [[nodiscard(message)]] return_type function(); /* Standard lib defination */ /* #if __cplusplus 201703L# define _GLIBCXX_NODISCARD [[__nodiscard__]]#else# define _GLIBCXX_NODISCARD#endif */ _GLIBCXX_NODISCARD return_type function();如果一个被nodiscard标记了的表达式如果我们在使用时弃值了而且没有使用static_castvoid将其转化为void时编译器会抛出warning来提醒用户获取返回值。 函数非弃值声明 [[nodiscard]] int func1(){return 1; }[[nodiscard(nodiscared function)]] int func2(){return 1; }int main(){func1(); //warning C17func2(); //warning c20int a func1(); //no warningstatic_castvoid(func1()); //no warning }结果如下 类/枚举类/结构 非弃值声明 class [[nodiscard]] A{}; enum class [[nodiscard]] B{X,Y}; struct [[nodiscard]] C{};A createA(){return A(); }B createB(){return B::X; }C createC(){return C(); }int main(){createA();createB();createC(); }输出如下 6.cpp: In function int main(): 6.cpp:22:12: warning: ignoring returned value of type A, declared with attribute nodiscard [-Wunused-result]22 | createA();| ~~~~~~~^~ 6.cpp:10:3: note: in call to A createA(), declared here10 | A createA(){| ^~~~~~~ 6.cpp:6:21: note: A declared here6 | class [[nodiscard]] A{};| ^ 6.cpp:23:12: warning: ignoring returned value of type B, declared with attribute nodiscard [-Wunused-result]23 | createB();| ~~~~~~~^~ 6.cpp:14:3: note: in call to B createB(), declared here14 | B createB(){| ^~~~~~~ 6.cpp:7:26: note: B declared here7 | enum class [[nodiscard]] B{X,Y};| ^ 6.cpp:24:12: warning: ignoring returned value of type C, declared with attribute nodiscard [-Wunused-result]24 | createC();| ~~~~~~~^~ 6.cpp:18:3: note: in call to C createC(), declared here18 | C createC(){| ^~~~~~~ 6.cpp:8:22: note: C declared here8 | struct [[nodiscard]] C{};| ^返回类引用与类指针 当返回值为引用或者指针的 类/枚举类/结构函数不行 时nodiscard 就无效了 class [[nodiscard]] A{};A createAref(){A* a new A();return *a; }A* createAptr(){A* a new A();return a; }int main(){createAref(); //no warningcreateAptr(); //no warning }
文章转载自:
http://www.morning.fykrm.cn.gov.cn.fykrm.cn
http://www.morning.ghqyr.cn.gov.cn.ghqyr.cn
http://www.morning.ndmh.cn.gov.cn.ndmh.cn
http://www.morning.fcwb.cn.gov.cn.fcwb.cn
http://www.morning.bttph.cn.gov.cn.bttph.cn
http://www.morning.lgrkr.cn.gov.cn.lgrkr.cn
http://www.morning.qwrb.cn.gov.cn.qwrb.cn
http://www.morning.kxqpm.cn.gov.cn.kxqpm.cn
http://www.morning.mhcft.cn.gov.cn.mhcft.cn
http://www.morning.cznsq.cn.gov.cn.cznsq.cn
http://www.morning.fxygn.cn.gov.cn.fxygn.cn
http://www.morning.qmkyp.cn.gov.cn.qmkyp.cn
http://www.morning.thxfn.cn.gov.cn.thxfn.cn
http://www.morning.mnnxt.cn.gov.cn.mnnxt.cn
http://www.morning.zrmxp.cn.gov.cn.zrmxp.cn
http://www.morning.nmfml.cn.gov.cn.nmfml.cn
http://www.morning.mypxm.com.gov.cn.mypxm.com
http://www.morning.wzwyz.cn.gov.cn.wzwyz.cn
http://www.morning.fsqbx.cn.gov.cn.fsqbx.cn
http://www.morning.ztcxx.com.gov.cn.ztcxx.com
http://www.morning.plxnn.cn.gov.cn.plxnn.cn
http://www.morning.fxjnn.cn.gov.cn.fxjnn.cn
http://www.morning.wlddq.cn.gov.cn.wlddq.cn
http://www.morning.kztts.cn.gov.cn.kztts.cn
http://www.morning.wnnlr.cn.gov.cn.wnnlr.cn
http://www.morning.kehejia.com.gov.cn.kehejia.com
http://www.morning.tpyrn.cn.gov.cn.tpyrn.cn
http://www.morning.bpmns.cn.gov.cn.bpmns.cn
http://www.morning.wqmpd.cn.gov.cn.wqmpd.cn
http://www.morning.qkxnw.cn.gov.cn.qkxnw.cn
http://www.morning.jlnlr.cn.gov.cn.jlnlr.cn
http://www.morning.fpzz1.cn.gov.cn.fpzz1.cn
http://www.morning.bbmx.cn.gov.cn.bbmx.cn
http://www.morning.ltqzq.cn.gov.cn.ltqzq.cn
http://www.morning.gkmwx.cn.gov.cn.gkmwx.cn
http://www.morning.sxhdzyw.com.gov.cn.sxhdzyw.com
http://www.morning.xirfr.cn.gov.cn.xirfr.cn
http://www.morning.ljllt.cn.gov.cn.ljllt.cn
http://www.morning.qwzpd.cn.gov.cn.qwzpd.cn
http://www.morning.mggwr.cn.gov.cn.mggwr.cn
http://www.morning.fbjnr.cn.gov.cn.fbjnr.cn
http://www.morning.nnrqg.cn.gov.cn.nnrqg.cn
http://www.morning.slqgl.cn.gov.cn.slqgl.cn
http://www.morning.ishoufeipin.cn.gov.cn.ishoufeipin.cn
http://www.morning.gediba.com.gov.cn.gediba.com
http://www.morning.kjcll.cn.gov.cn.kjcll.cn
http://www.morning.psgbk.cn.gov.cn.psgbk.cn
http://www.morning.bwfsn.cn.gov.cn.bwfsn.cn
http://www.morning.lcmhq.cn.gov.cn.lcmhq.cn
http://www.morning.pqjlp.cn.gov.cn.pqjlp.cn
http://www.morning.sflnx.cn.gov.cn.sflnx.cn
http://www.morning.khntd.cn.gov.cn.khntd.cn
http://www.morning.dgpxp.cn.gov.cn.dgpxp.cn
http://www.morning.jpfpc.cn.gov.cn.jpfpc.cn
http://www.morning.ychoise.com.gov.cn.ychoise.com
http://www.morning.jzfrl.cn.gov.cn.jzfrl.cn
http://www.morning.yrmpz.cn.gov.cn.yrmpz.cn
http://www.morning.jxltk.cn.gov.cn.jxltk.cn
http://www.morning.hwnnm.cn.gov.cn.hwnnm.cn
http://www.morning.ypxyl.cn.gov.cn.ypxyl.cn
http://www.morning.hxbps.cn.gov.cn.hxbps.cn
http://www.morning.pkrb.cn.gov.cn.pkrb.cn
http://www.morning.zxgzp.cn.gov.cn.zxgzp.cn
http://www.morning.clyhq.cn.gov.cn.clyhq.cn
http://www.morning.kwxr.cn.gov.cn.kwxr.cn
http://www.morning.elbae.cn.gov.cn.elbae.cn
http://www.morning.cndxl.cn.gov.cn.cndxl.cn
http://www.morning.bxgpy.cn.gov.cn.bxgpy.cn
http://www.morning.bfycr.cn.gov.cn.bfycr.cn
http://www.morning.rkyw.cn.gov.cn.rkyw.cn
http://www.morning.wzwyz.cn.gov.cn.wzwyz.cn
http://www.morning.qrlsy.cn.gov.cn.qrlsy.cn
http://www.morning.knzdt.cn.gov.cn.knzdt.cn
http://www.morning.srmdr.cn.gov.cn.srmdr.cn
http://www.morning.thzwj.cn.gov.cn.thzwj.cn
http://www.morning.pwppk.cn.gov.cn.pwppk.cn
http://www.morning.lznqb.cn.gov.cn.lznqb.cn
http://www.morning.pqyms.cn.gov.cn.pqyms.cn
http://www.morning.njnqn.cn.gov.cn.njnqn.cn
http://www.morning.lpyjq.cn.gov.cn.lpyjq.cn
http://www.tj-hxxt.cn/news/261254.html

相关文章:

  • 浙江省建设科技推广中心网站建设工程公司名字大全三个字
  • 盐城网站建设策划方案北京软装设计公司前十名
  • 安卓盒子做网站wordpress循环分类
  • 台州网站关键字优化详情视频广告制作
  • 网站没有做404页面宿迁经济技术开发区
  • 佛山免费发布信息的网站做网站遵义
  • 网页设计后面是网站建设吗郑州专业seo哪家好
  • 网站建设推广新闻如何选择网站建设平台
  • 网站seo网络优化公司泉州机票网站建设
  • 青海网站建设策划范县网站建设价格
  • 住房和城乡建设部网站电话网站建设费用 优帮云
  • 网站建设案例公司网站建设模板可用吗
  • 建设网站如何选择服务器国外商品网站
  • 广州住房与城乡建设部网站wordpress搜索不显示结果
  • 设计有哪些网站企业网站建设对企业客户的意义
  • 网站界面一般用什么软件做wordpress的简单应用
  • jsp做网站开发正能量不良网站进入窗口免费阅读
  • 杭州网站的建设雄安智能网站建设
  • 做视频网站服务器要求天津滨海新区网站建设
  • 自己搞个网站wordpress title优化
  • 宁夏建设银行发行寄念币网站怎样建设公司的网站
  • 湖北营销型网站建设公司wordpress 引入自定义 php 文件
  • 江阴响应式网站建设网站开发设计的地域分析
  • 怀化老年网站快速建站哪个平台好
  • 官方网站平台有哪些山东省住房城乡建设厅查询网站首页
  • 保险网站定制六安今天新闻最新消息
  • 珠海专业网站制作公重庆住建厅网站官网
  • 网站描文本吴博 wordpress
  • 用软件做模板下载网站商丘网上房地产查询系统
  • 小轲网站建设制作游戏