关于decltype的应用多出现在泛型编程中,比如我们编写一个类模板,在里面添加遍历容器的函数,操作如下:

代码如下:

#include <iostream>
#include <list>using namespace std;template<typename T>
class Container
{public:void printElem(T & t){for (m_it = t.begin(); m_it != t.end(); m_it++){cout << "value = " << *m_it << endl;}}private://T::iterator m_it;//error 定义变量要具体类型,这些写不行decltype(T().begin()) m_it;
};int main()
{list<int>ls{ 1,2,3,4,5,6 };Container<list<int>>c;c.printElem(ls);return 0;
}

测试结果:

[C++11]decltype在泛型编程中的使用举例相关推荐

  1. C++11 decltype表达式

    decltype 在某些情况下,不需要或者不能定义变量,但是希望得到某种类型,这时候就可以使用 C++11 提供的 decltype 关键字了,它的作用是在编译器编译的时候推导出一个表达式的类型,语法 ...

  2. Java 11:String类中的新方法

    Java 11:String类中的新方法 Java 11没有很多特定于语言的功能.因此,令人惊讶的是,在Java String Class中引入了6种新方法. Java 11 String类新方法 让 ...

  3. 静电场与电流场_2021高考复习:静电场考点突破微专题11 带电粒子在交变电场中的运动 9.26...

    静电场考点突破微专题11  带电粒子在交变电场中的运动 一.知能掌握 1.常见的交变电场 常见的产生交变电场的电压波形有方形波.锯齿波.正弦波等. 2.常见的题目类型 (1)粒子做单向直线运动(一般用 ...

  4. ML.NET 发布0.11版本:.NET中的机器学习,具有TensorFlow和ONNX的新功能

    微软发布了其最新版本的机器学习框架:ML.NET 0.11带来了新功能和突破性变化. ML.NET 0.11发布:.NET中的机器学习,具有TensorFlow和ONNX的新功能 ML.NET 0.1 ...

  5. matlab 函数优化问题,matlab求解最优化问题 Matlab在最优化问题中的应用举例.doc

    matlab求解最优化问题 Matlab在最优化问题中的应用举例 导读:就爱阅读网友为您分享以下"Matlab在最优化问题中的应用举例"的资讯,希望对您有所帮助,感谢您对92的支持 ...

  6. 【GlobalMapper精品教程】031:Globalmapper在航测内业数据处理中的应用举例

    Globalmapper在航测内业数据处理中的应用举例索引. 文章目录 1. 图像及航线浏览 2. 3D重建 3. 点云分类 4. 创建地形 5. 地形分析 1. 图像及航线浏览 扩展阅读:[Glob ...

  7. 计算机excel2010运算符,Excel 2010 中运算符应用举例

    Excel 2010 中运算符应用举例 1. 算术运算符应用举例 算术运算符:+.-.* ./ .^.% 例1"=-5*20+20%*100+4^3/2",这个公式中主要是用算术运 ...

  8. iOS中Tager-Action 应用举例实现 高内聚低耦合

    iOS中Tager-Action 应用举例实现 高内聚低耦合 文章主要实现的是UILabel可以根据实际要求而改变 首先创建根视图控制器rootViewController 继承与UIViewCont ...

  9. java中的replace用法_java中replace用法举例:replace(char oldChar, char newChar)返回一个新的字符串...

    1.JAVA中,char占2字节,16位.可在寄存汉字 2.java中replace用法举例:replace(char oldChar, char newChar)返回一个新的字符串,它是经过用 ne ...

最新文章

  1. java 稀疏数组和二维数组转换,并保存稀疏数组到文件后可以读取
  2. Zookeeper选举机制测试
  3. Redis之GEO存储地理位置信息
  4. [scala-spark]11. RDD控制操作
  5. AutoDim:自动Embedding维度寻优,如何节省70%的存储空间同时还能大幅提效?
  6. mysql 建数据库并设置为utf-8编码
  7. 计算机应用基础成教作业,(计算机应用基础成教08A卷1.doc
  8. @query传参_vue-router中params传参和query传参的区别及处理方法
  9. orderd mysql_Oracle入门教程:leading vs ordered hint
  10. 大屏监控系统实战(4)-如何将SpringBoot+Vue前后端分离项目一次打包为一个Jar包运行?
  11. 3631: [JLOI2014]松鼠的新家
  12. java中包定义_java中包的定义与使用
  13. 网页中,列表数据的分页加载、自动加载
  14. 国有数据要素市场的政策红利,你get 到了吗?
  15. IOS音视频(二)AVFoundation视频捕捉
  16. 实习单位评价意见~实习鉴定
  17. 虚拟机或公有云搭建wordpress博客
  18. Python基础-19-魔法方法(常用)
  19. pdf压缩 网上常见方法比较
  20. 滑动验证码--前端部分

热门文章

  1. linux之/usr/local/bin和/usr/bin区别
  2. linux网络编程之地址结构sockaddr和sockaddr_in的区别
  3. (8)小白又如何?3分钟搞定一个 C# 知识点
  4. 电子商务应用课程知识整理 第二章-电子商务相关知识与技术
  5. 你们都被电视剧版的 《西游记》给骗了!| 今日趣图
  6. 如何撬动机器学习的冰山一角?
  7. 5单个编译总会编译全部_VS2019 v16.5 MSVC编译器后端更新汇总
  8. 苹果android 对比,苹果安卓旗舰差距有多少?看了这份对比,果粉傻眼了
  9. 面试被问到Java 静态代理/动态代理?不用怕,这样子就可以!!
  10. chrome vue.js插件文档_神级宝库!GitHub 标星 1.2w+,Chrome 最天秀的插件都在这里啦!...