就是C++里面说的函数模板和类模板,我们以前写C语言的时候,不同的类型参数,可能要写不同的函数。

C++的模板出现之后,就可以实现函数模板,函数模板可以接纳不同的类型,然后这些类型都可以调用同一个函数,而且不会出错。

泛型不属于面向对象,它是面向对象的补充和发展

泛型,也就是任何类型,也就是不依赖于具体的数据类型
通常,我们的操作都是都是依赖于具体的数据类型的。如

#include <stdio.h>
int add(int a,int b)//此函数只能求两个整数的和,返回值是整数 ,不能利用此函数求浮点的和,必须另写一个函数来完成求浮点数的和
{
return a+b;
}
int main()
{
int he;
he=add(3,4);
he=add(5.6,4.7);//指定浮点数计算时仍根据函数的要求转换为整数再计算
printf("%d",he);
}

结果如下:

下面的代码得保存为.cpp才可以正常编译,如果保存为.c不能正常编译
下面的代码定义的mmax函数,可以求int float double char类型的比较结果

#include <stdio.h>
template <typename T>
T mmax(T a,T b)
{
return a>b?a:b;
}
int main()
{
int res=mmax(1,2);
double re=mmax(1.4,5.1);
float rea=mmax(4.4,-35.1);
//string stra=mmax("hello","world!");
//printf("%x\n",&stra);
printf("%d\n",res);
printf("%f\n",re);
printf("%lf\n",re);
printf("%f\n",rea);
printf("%lf\n",rea);
printf("%d\n","hello">"world");
printf("%s",mmax("hello","world!"));
//printf("%s",stra);
}

结果如下:

最新文章

  1. centos6和centos7防火墙的关闭
  2. 引用参数,值参数,ref,out
  3. python项目练习3:万能的XML
  4. 14.quartus联合modelsim仿真
  5. hdu 4815 Little Tiger vs. Deep Monkey(01背包)
  6. selenium+python find_element_by_css_selector方法使用
  7. MyEclipse右键new菜单项的设置 及 Eclipse中各种文件不能保存中文的问题
  8. MVC自学第四课
  9. HEVC与VP9编码效率对比
  10. Windows下根据端口号查找进程并关闭
  11. oracle 创建表空间TABLESPACE
  12. 《Effective&#160;Java中文版(第2版).pdf》-笔记
  13. ZOJ 4060 - Flippy Sequence - [思维题][2018 ACM-ICPC Asia Qingdao Regional Problem C]
  14. 用juniversalchardet解决爬虫乱码问题
  15. 带你从零学ReactNative开发跨平台App开发(一)
  16. Shader开发工具: PVRShaman
  17. JS创建类的方法--简单易懂有实例
  18. 基于NIO的同步非阻塞编程完整案例,客户端发送请求,服务端获取数据并返回给客户端数据,客户端获取返回数据
  19. CentOS 6.0 VNC远程桌面配置方法(转帖)
  20. 在PHP中使用加密技术

热门文章

  1. 摄像头与毫米波雷达(Radar)融合
  2. 部署通用基础设施, 满足顶级 SLA 要求
  3. Docker系列——Grafana+Prometheus+Node-exporter微信推送(三)
  4. js正则中文
  5. 【NX二次开发】调整视图大小
  6. python学习笔记04-了解操作符与条件分支
  7. 01:HTTP协议
  8. Centos8.3、proxysql2.0读写分离实战记录
  9. Linux安装界面简介
  10. 9.10、mysql进程、状态在线修改参数重要知识