C++模板

C++模板模(mu)板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。模板是创建泛型类或函数的蓝图或公式。(反正教程上抄的定义,理解不怎么深刻。)函数模板返回两个数中最大一个。template<classT>TMax(constT&value1,constT&value2){ returnvalue1

大家好,又见面了,我是你们的朋友全栈君。

模(mu)板是泛型编程的基础,泛型编程即以 一种 独立于任何特定类型 的方式编写代码。
模板是创建泛型类或函数的蓝图或公式。(反正教程上抄的定义,理解不怎么深刻。)

函数模板

返回两个数中最大一个。

template <class T>
T Max(const T& value1, const T& value2){	
	return value1 > value2 ? value1 : value2;
}

使用

cout << "Max(3.14, 2.2) = " << Max(3.14, 2.2) << endl;

输出:Max(3.14, 2.2) = 3.14

类模板

模板的声明和实现要放在同一文本。至于原因,可能研究了泛型编程原理就知道了。

template <class T>
class MyClass{
public:	
	T Max(const T& value1, const T& value2);
};

template <class T>
T MyClass<T>::Max(const T& value1, const T& value2){
	return value1 > value2 ? value1 : value2;
}

使用

MyClass<double> cl;
cout << "cl.Max(3.14, 2.2) = " << cl.Max(3.14, 2.2) << endl;

输出:cl.Max(3.14, 2.2) = 3.14

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161503.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • css画圆弧_css圆角样式

    css画圆弧_css圆角样式CSS3是样式表(stylesheet)语言的最新版本,它的一大优点就是支持圆角。网页设计大师NicholasZakas的最新文章,清晰易懂地解释了CSS3圆角的各个方面,非常值得学习。以下就是我翻译的中文版。=========================================CSS3圆角详解作者:NicholasZakas译者:阮一峰发表日期:2010年12月8日一、CSS3…

    2025年7月25日
    3
  • 黑盒测试的测试用例方法_黑盒测试是基于什么的测试

    黑盒测试的测试用例方法_黑盒测试是基于什么的测试测试用例

    2022年10月3日
    4
  • aliddns ipv6_利用阿里云ddns动态解析ipv6地址[通俗易懂]

    aliddns ipv6_利用阿里云ddns动态解析ipv6地址[通俗易懂]目前家庭宽带基本都可以通过设置连上ipv6网络,有了ipv6之后,每台设备就都有了自己独有的ip地址,这样我们就可以通过外网利用ipv6地址直接访问家里的设备,让家里的设备实现服务器的效果。但是目前设备分配到的ipv6的地址是变化的,所以你就需要通过一些手段把变化的ipv6地址绑定到不变的域名上,这样就可以直接用域名访问家里的设备了。下面就探讨一下利用阿里云ddns动态解析ipv6地址的方法。一、…

    2022年6月1日
    49
  • IOSG Ventures宣布加入Celer状态守卫者网络以及cBridge流动性桥接网络

    IOSG Ventures宣布加入Celer状态守卫者网络以及cBridge流动性桥接网络IOSGVentures宣布加入Celer状态守卫者网络,并已建立Celer验证人节点。同时,IOSGVentures也宣布加入CelercBridge流动性桥接网络,为其提供流动性。IOSGVentures将与Celer共同维护其二层扩容网络的可用性和安全性,并为其生态发展提供持续可靠的基础设施服务。IOSGVentures现已成为Celer状态守卫者网络验证人节点IOSGVentures成立于2017年,是由社区驱动的研究型早期美元基金,在中国、美国和新…

    2022年6月4日
    37
  • Linux安装tomcat,配置环境变量

    Linux安装tomcat,配置环境变量一、安装tomcat需要先配置jdk,所以没有配置jdk同学,先移步Linux安装JDK二、卸载tomcat检查linux是否安装tomcatrpm-qa|greptomcat查看下系统信息,确认是32位还是64位:uname-a输入rpm-qa|greptomcat如果有通过rpm-e`rpm-qa|greptomcat`(或rpm-e加上面rpm…

    2022年6月3日
    247
  • google cloud platform官网_ai智能体验店免费送

    google cloud platform官网_ai智能体验店免费送一、GoogleCloudPlatform(GCP)简介GoogleCloudPlatform(以下简称GCP)是Google提供的云平台,。Google云平台提供很多功能,包括计算服务,存储服务,网络服务,大数据服务,人工智能服务,以及谷歌的产品等,可以用来搭建加速服务,网站和存储数据等等。本文将介绍如何申请GCP一年的免费试用、Linux服务器环境搭建。Docker环境搭建…

    2025年8月11日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号