首页 > 其他分享 >auto作为返回值类型与decltype推断有什么区别

auto作为返回值类型与decltype推断有什么区别

时间:2022-09-03 16:48:37浏览次数:71  
标签:decltype int auto 推断 类型 返回值

对使用 auto 来表明函数返回类型的情况,编译器使用模板类型推导,会消除引用。 decltype推断则保留返回值类型。 比如

template<typename Container, typename Index>
auto authAndAccess(Container &c, Index i) 
{
authenticateUser(); 
return c[i];
 }

auto返回会剥离c[i]返回值int&的引用,返回值类型为int.

decltype(c[i])返回值类型为int&

标签:decltype,int,auto,推断,类型,返回值
From: https://www.cnblogs.com/yanzhao-x/p/16652938.html

相关文章

  • auto用法
    一、auto的推导规则:1)当声明不是指针或引用时,auto的推导结果和初始化表达式抛弃引用和cv'限定符后类型一致。2)当声明为指针或引用时,auto推导结果将保持初始化表达式的cv属性......
  • 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(17)-Fiddler如何充当第三者,再识AutoRe
    1.简介上一篇宏哥主要讲解的一些在电脑端的操作和应用,今天宏哥讲解和分享一下,在移动端的操作和应用。其实移动端和PC端都是一样的操作,按照宏哥前边抓取移动端包设置好,就可......
  • unplugin-auto-import自动导入TS2304警告问题
    https://blog.csdn.net/qq_35317490/article/details/123525657?spm=1001.2101.3001.6650.13&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-......
  • AutoNumber VsCode插件开发
    AutoNumberVsCode插件开发:::details目录目录AutoNumberVsCode插件开发Step.2:安装脚手架Step.3:创建空项目Step.4:打包发布Step.5:本地打包Step.6:上传vs......
  • D365: Business event如何应用于Power automate
    业务事件在D365FO中有两种业务事件的处理方式:1.工作流事件在D365F&O中,如果单据存在工作流,在业务事件清单中,我们可以直接看到,Powerautomate可以直接拿来使用,不需要额......
  • @Autowired与@Resource
    @Autowired@Autowired是按类型自动转配的,不支持id匹配。需要导入spring-aop的包!@Autowired(required=false)说明:false,对象可以为null;true,对象必须存对象,不能为null......
  • Java中“接口”可以作为方法的返回值吗?
    可以返回接口,接口虽然不能被实例化,但是接口的实现类都可以向上转型为接口。所谓面向接口编程是指我们在编写代码时对数据参数的定义尽量写成接口,待真正实现的时候再用实际......
  • 修改 markdown 二级标题的编号 - 自动编号 autoNumber.js nodejs
    需求我在写https://www.vuejsdev.com/01FE/must-know-knowledge.html这个页面的时候,二级页面标题前面有编号,但是有时候我会把顺序换下,每次手动修改编号,开始数据量小还......
  • 记一次xlua调用c#的Getcomponent返回值本应是nil但不是nil的问题
    lua调用Getcomponent会返回一个套壳的空类型 解决方法:  equal方法是重写的,==重载是静态的,所以equal可以检测到。可以参考:(18条消息)xLua下调用GetComponent时返......
  • C#Autofac依赖注入批量注入 (目前版本.netcore3.0)
    上一文:C#依赖注入一看就会系列链接:C#依赖注入(直白明了)讲解一看就会系列-22222220-博客园(cnblogs.com) 上一次我们知道了为什么要依赖注入,这次我们就用使......