c++11:decltype
1.首先针对decltype有两种表达方法,分别是不带括号的和带括号的。
2.其次,对于这两种表达方式的区别体现在变量上:
只要是带了括号就取被推断变量的引用,不带括号就直接取被推断变量定义时的类型
3.另外,如果被推断的是函数调用,则无论是带括号还是不带括号得到的都是函数的返回类型。
4.最后,如果被推断的是运算表达式,如果表达式得到的右值,则无论是带括号还是不带括号得到的都是被推断的类型;如果表达式得到的是左值,则无论是带括号还是不带括号得到的都是被推断的引用。
具体的,2,3,4条对应的代码如下:
int n, x = 1;const int m = 0, z = 1;//2.decltype(n) a; //a->intdecltype((n)) b = n; //b->int &decltype(m) c = 1; //c->const intdecltype((m)) d = n; //d->const int &//3.decltype(test()) e;//e->intdecltype((test())) f;//f->int//4.decltype(1 + 2) g;//g->intdecltype((1 + 2)) h;//h->intdecltype(m + z) i = m;//i->intdecltype((m + z)) j = z;//j->intdecltype(x += 10) k = x;//k->int &decltype((x += 10)) l = x;//l->int &
c++11:decltype相关推荐
- C++11精要学习:decltype的功能与使用
文章目录 获取表达式的类型 推导规则 返回类型后置 高级用法 获取表达式的类型 在编写程序的过程中,我们可能会有一种需求,就是希望可以根据一个变量的类型,来定义具有相同类型的变量.例如定义int x ...
- 二、C++11新特性:decltype类型推导
目录 二.decltype类型推导 2.1. decltype decltype和auto的异同: 2.2.decltype的应用 ①.decltype和typedf/using合用 ②.deltyp ...
- C++14尝鲜:decltype 和 decltype(auto)
decltype decltype是C++11新增的关键字,主要用于提取变量和表达式的类型. decltype的语法形式为:decltype(e),这里e是一个表达式,而decltype(e)是一个类 ...
- C++11之decltype类型推导(使用场景、推导四规则、cv限定符)
系列文章 C++11之正则表达式(regex_match.regex_search.regex_replace) C++11之线程库(Thread.Mutex.atomic.lock_guard.同步 ...
- 11:菜单自动化软件部署经典案例
11企业Shell面试题11:菜单自动化软件部署经典案例 综合实例:打印选择菜单,按照选择一键安装不同的Web服务. 示例菜单: [root@oldboy scripts]# shmenu.sh 1. ...
- Effective C# 原则11:选择foreach循环
Effective C# 原则11:选择foreach循环 Item 11: Prefer foreach Loops C#的foreach语句是从do,while,或者for循环语句变化而来的,它相 ...
- 11:数值的整数次方
/*** 面试题11:数值的整数次方* 给定一个double类型的浮点数base和int类型的整数exponent.求base的exponent次方.*/ public class _11_power ...
- 实验10:创建带有生命周期方法的bean ||实验11:测试bean的后置处理器
实验10:创建带有生命周期方法的bean 实验11:测试bean的后置处理器 MyBeanPostProcessor.java package com.atguigu.bean;import org. ...
- 免费下载!《九年双11:互联网技术超级工程》,300页干货精华
人类历史上的超级工程有什么?金字塔.万里长城.迪拜世界岛.三峡大坝-- 其实,我们还有个很特别的超级工程:人们看不到它的形态,却无时无刻不在感知它的存在.天南海北的货物因它向世界各地集散,各行各业因它 ...
最新文章
- 【bzoj1853】[Scoi2010]幸运数字 容斥原理+搜索
- 系统服务器巡查表,服务器操作系统巡检表
- Java设计模式(二):观察者设计模式
- Dockerfile的ONBUILD指令
- SQL基础操作_2_操作多个表
- Ansi与Unicode编码
- php smarty 语法,php之Smarty根本语法和三大变量
- Oracle 存储大文本
- 使用HttpWebRequest方式访问外部接口
- 用友U8对账不平,对账错误简单处理方法
- discuz 门户diy实现翻页功能的修改记录
- SIFI尺度不变特征变换算法
- java 先入先出_一道java的基础题:一个线程安全的后进先出队列
- html设置某一块一直在屏幕上方,gogo体育在线-gogo体育在线
- Google设置应用专用密码
- 曲线积分于曲面积分(后篇 曲面积分-坐标曲面积分-高斯公式-斯托克斯公式)
- java爬虫爬取B站弹幕
- R语言:批量获取指定股票代码的股票数据
- python路径、工作路径、文件路径问题、改变当前路径
- 永磁同步电机simulink仿真——PMSM矢量控制