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

模板的使用

模板

模板的概念:模板就是建立一个通用的模具,大大提高复用性
c++中模板机制分为两类

函数模板

建立一个通用函数,其函数返回值类型和形参类型可以不具体定制,用一个虚拟的类型来代表

template<typename T>
//template		声明创建模板
//typename 		表明其后面的符号是一种数据类型,可以用class代替
//T				通用的数据类型,名称可以替换,通常是大写字母
// 定义一个模板,告诉编译器后面这个函数中的T是通用数据类型
template<typename T>
void myswap(T a,T b) {}int main() {int a = 10, b = 20;// 使用模板的两种方式//1. 自动类型推导myswap(a, b);//2. 显示指定类型,指定告诉模板类型myswap<int>(a, b);//空模板的参数列表强制调用模板myswap<>(a, b);
}

普通函数与函数模板的调用规则

  1. 如果函数模板和普通模板都可以调用,优先调用普通模板
  2. 可以通过空模板参数列表,强制调用函数模板
  3. 函数模板可以发生参数重载
  4. 如果函数模板可以产生更好的匹配,优先调用函数模板

类模板

http://www.xdnf.cn/news/6095.html

相关文章:

  • ASP.NET Core Identity 框架中实现密码重置
  • 【Qt】之音视频编程2:QtAV的使用篇
  • MapReduce打包运行
  • 在Window上面添加交叉编译链 MinGW+NDK
  • blazor与硬件通信实现案例
  • PyTorch 分布式训练
  • AI时代,如何实现人机共舞?
  • 新建一个reactnative 0.72.0的项目
  • VLA 论文精读(二十二)Multi-agent Embodied AI: Advances and Future Directions
  • 【架构】RUP统一软件过程:企业级软件开发的全面指南
  • 在scala中sparkSQL连接masql并添加新数据
  • python使用OpenCV 库将视频拆解为帧并保存为图片
  • 【Mac 从 0 到 1 保姆级配置教程 15】- Python 环境一键安装与配置,就是这么的丝滑
  • 虚拟机Ubuntu系统怎么扩展容量,扩展容量后进不去系统怎么办?
  • python共享内存实际案例,传输opencv frame
  • Python面向对象编程(OOP)深度解析:从封装到继承的多维度实践
  • 【论信息系统项目的资源管理】
  • 【Git】合并和变基的区别
  • windows 强行终止进程,根据端口号
  • 人工智能技术演进:从多模态融合到智能体落地的实践探索
  • uart16550详细说明
  • 使用虚拟机Linux写程序
  • 网站开发过程中样式忽然不显示问题
  • GOOSE协议publisher上传频率
  • Playwright 安装配置文件详解
  • 爆肝整理!软件测试面试题整理(项目+接口问题)
  • OpenCV特征处理全解析:从检测到匹配的完整指南
  • 二分查找算法的思路
  • linq中 List<T>.ForEach() 与 的 Select() 方法区别——CAD c#二次开发
  • HCIP实验(BGP联邦实验)