1.概述

template:模板 即提供一种模板标准。在C++中最重要的特征之一就是代码重用,为了实现代码的重用,代码需要具有通用性,就不受数据类型的影响,所以说template就是解决此问题的。。直白点就是用T来代替任意类型。类似重载。但模板在编译时不会产生任何目标代码。。

2.分类

(1)函数模板
(2)类模板

#include<iostream>
#include<string.h>
using namespace std;
struct student{int id;string name;
};
template <class T>
class Store{private:T item;bool haveValue;public:Store();T getitem();void putitem(T x);
};
template <class T>
Store<T>::Store():haveValue(false){}template <class T>
T Store<T>::getitem(){if(!haveValue){cout<<"no item"<<endl;exit(1);}return item;
}template <class T>
void Store<T>::putitem(T x){haveValue=true;item=x;
}int main(){Store<int>s1,s2;s1.putitem(3);s2.putitem(-3);cout<<s1.getitem()<<" "<<s2.getitem()<<endl;
student sp={100,"LI"};Store<student>s;s.putitem(sp);cout<<s.getitem().id<<""<<s.getitem().name;return 0;}

注意:方法实现时注意跟上 template 相当于函数模板。。
声明 函数名 <类型> s1,s2

关于template的作用相关推荐

  1. Vue进阶(幺肆玖):template 标签

    文章目录 一.HTML5 中的 template 标签 二.Vue 中的 template 标签 三.注意事项 四.拓展阅读 一.HTML5 中的 template 标签 html5中template ...

  2. elementUI表格table的列内置样式修改方法/对比template,列属性class-name,table属性cell-class-name

      1,table属性cell-class-name的使用可以作用到某一行,或者某一列等等.但是在style标签中要去掉scoped,不然无效. (在elementUI中,row-class-name ...

  3. template的用法(超详细)

    首先总结一下,template其实是C++的一种语法糖,本意是去简化程序员的工作(但我认为语法实在有点繁琐,反而加大了开发成本). template的运用场景主要是以下部分,假设我们想写一个交换函数s ...

  4. AndroidStudio 模板 Template 生成代码 - 代码模板好,下班回家早

    AndroidStudio 模板 Template 生成代码 - 代码模板好,下班回家早 创建好的模板代码,里面包含MVP模式代码模板,需要的小伙伴可以自己下载导入到 C:\Program Files ...

  5. 【转】Angular学习总结--很详细的教程

    *这篇文章是转来的,做了自己的一点修改,排版.原始出处不明,如涉及原博主版权问题,请及时告知,我将会立即删除*. 1 前言 前端技术的发展是如此之快,各种优秀技术.优秀框架的出现简直让人目不暇接,紧跟 ...

  6. chart 模板 - 每天5分钟玩转 Docker 容器技术(165)

    Helm 通过模板创建 Kubernetes 能够理解的 YAML 格式的资源配置文件,我们将通过例子来学习如何使用模板. 以 templates/secrets.yaml 为例: 从结构看,文件的内 ...

  7. Django实现对数据库数据增删改查(一)

    文章目录 1.创建工程 2.数据显示 2.1数据模板 2.2逻辑处理 2.3路由分发 3.数据添加 3.1添加新增模板 3.2添加视图函数 3.3路由分发 4.数据删除 4.1模板 4.2删除视图函数 ...

  8. vue 方法里面修改样式_vue中修改swiper样式

    问题 vue单文件组件中无法修改swiper样式. 解决 1,单文件组件中:新增一个style 不加scoped 让它最终成为全局样式.只在其中操作swiper的样式. .swiper-contain ...

  9. 如何在 20 分钟内给你的 K8s PaaS 上线一个新功能?

    作者 | 孙健波(天元) 来源|阿里巴巴云原生公众号 上个月,KubeVela 正式发布了, 作为一款简单易用且高度可扩展的应用管理平台与核心引擎,可以说是广大平台工程师用来构建自己的云原生 PaaS ...

最新文章

  1. linux基础命令学习
  2. Web App和Native App 谁将是未来
  3. 词法、语法与语义相关知识
  4. textarea 通过 json在各浏览器的显示回车换行的问题
  5. HBase的Row Key设计
  6. python中文件打开的合法模式组合_以下选项中,不是Python文件打开的合法模式组合是:...
  7. ASP.NET网站SESSION丢失的问题
  8. check mk mysql_Mysql管理必备工具Maatkit详解之四(mk-duplicate-key-checker)
  9. 因程序问题引起的服务器CPU负荷一直保持在90%以上
  10. Hadoop 源代码分析(二三)FSDirectory
  11. 在线重建索引 oracle,ORACLE重建索引详解
  12. InnoDB怎么解决幻读的?
  13. 【Oracle】userenv()函数介绍分析
  14. PhysX官方手册翻译(Dynamics)
  15. java作业分工_团队作业(三):确定分工
  16. 崩三类卡通渲染解析及制作规范
  17. 7 call和ret指令
  18. 浏览器 重定向次数限制_浏览器重定向(302)限制问题
  19. 专接本c语言用什么软件,软件工程专业专接本考什么
  20. 从Excel中解救你!如何用Python实现报表自动化

热门文章

  1. [艾兰岛][Ylands]从0开始学游戏开发_5.搭建技巧(古城迷踪)
  2. 记:判断字符串中空格字符的个数
  3. CSS图片居中显示 超出div容器高度度隐藏 css3 object-fit
  4. java使用递归迭代实现流程图展示(仅供参考)
  5. LED灯多种方式闪烁的FPGA实现
  6. android游戏性能测试,评测 篇二十九:用游戏数据来彰显实力,华为nova5i Pro游戏性能篇...
  7. java8 函数编程Consumer使用详解
  8. php 删除字符串里指定字符,php删除字符串中指定字符_php删除字符串
  9. Android 仿微信的朋友圈发布(1)
  10. VScode配置ESLint检测语法+Prettier代码格式化