首页 > 编程语言 >模板元编程之函数模板(一)

模板元编程之函数模板(一)

时间:2023-06-10 12:35:44浏览次数:39  
标签:const 函数 编程 参数 类型 值中 模板

一、概述

函数模板提供了一种函数行为,该函数行为可以用多种不同的类型进行调用,换句话说函数模板代表一个函数家族,它的表示看起来和普通的函数很相似,唯一的区别就是有些函数元素是未确定的,这些元素将在使用时被参数化。

下面是一个返回两个值中最大者的函数模板

template <typename T> 
inline T const& Max_Func(T const& a, T const& b) {
    return a < b ? b : a;
}

这个模板定义了一个“返回两个值中最大者”的函数家族,两个值是通过函数参数a和b传递给该函数模板的;而参数的类型还没确定,用模板参数T来代替。

模板参数必须用如下形式的语法来声明:

template <用逗号隔开的参数列表>

在上面的程序中,类型参数是T,可以使用任何标识符作为类型参数的名称,但使用T已经成为了一种惯例,类型参数T表示的是,调用者调用这个函数时所指定的任意类型,可以使用任何类型(基本类型,类等)来实例化该类型参数,只要所用类型提供模板使用的操作就可以,例如上面的这个例子,类型T需要支持operator<,因为a和b就是使用这个运算符来比较大小的。

 

标签:const,函数,编程,参数,类型,值中,模板
From: https://www.cnblogs.com/QingYiShouJiuRen/p/17471072.html

相关文章

  • django admin 后台手动添加数据,设置表单默认自动填充默认值,get_form函数
    需求admin添加数据,表单某字段默认填充值。例如电话号默认填充前缀:+86 效果 实现方法:https://www.codenong.com/529890/在数据库表模型对应的admin后台的管理文件admin.py 内对应Admin管理类配置get_form函数@admin.register(models.UserInfo)classUserInfoAdmi......
  • 报告PPT(123页):Python编程基础精要
    本文所发PPT是董付国老师2018年5月份在成都第二届全国高校“数据科学与大数据技术”专业教学研讨会(电子工业出版社)上作报告用的。......
  • 典型用户模板分析
    用户一:名字:zz性别、年龄:男,19职业:大二学生收入:无知识层次和能力:大学本科,精通手机电脑各种功能生活/工作情况:以父母给的生活费为生动机,目的,困难:想垃圾分类正确,不会垃圾分类。用户偏好:喜欢对垃圾进行分类用户比例:80%典型场景:有强烈强迫症1.背景:(1)典型用户大......
  • React - 04 函数组件的底层渲染机制
    1.函数组件创建:在SRC目录中,创建一个xxx.jsx的文件,就是要创建一个组件;我们在此文件中,创建一个函数,让函数返回JSX视图「或者JSX元素、virtualDOM虚拟DOM对象」;这就是创建了一个“函数组件”!!调用:基于ES6Module规范,导入创建的组件「可以忽略.jsx后缀名」,然后像写标签一样调用这个组......
  • Luogu P1939 【模板】矩阵加速(数列)
    【模板】矩阵加速(数列)题目描述已知一个数列\(a\),它满足:\[a_x=\begin{cases}1&x\in\{1,2,3\}\\a_{x-1}+a_{x-3}&x\geq4\end{cases}\]求\(a\)数列的第\(n\)项对\(10^9+7\)取余的值。输入格式第一行一个整数\(T\),表示询问个数。以下\(T\)行,每行一个正......
  • 这 3个Python 函数你知道吗?
    动动发财的小手,点个赞吧!作为21世纪最流行的语言之一,Python当然有很多有趣的功能值得深入探索和研究。今天将介绍其中的三个,每个都从理论上和通过实际示例进行介绍。我想要介绍这些函数的主要原因是它们可以帮助您避免编写循环。在某些情况下,循环的运行成本可能很高,除此之外,这些......
  • C语言编程—强制类型转换
    强制类型转换是把变量从一种类型转换为另一种数据类型。例如,如果您想存储一个long类型的值到一个简单的整型中,您需要把long类型强制转换为int类型。您可以使用强制类型转换运算符来把值显式地从一种类型转换为另一种类型,如下所示:(type_name)expression请看下面的实例,使用强......
  • 零代码编程:用ChatGPT提取新闻网站上的文本
    现在国内的新闻网站上,乱七八糟的广告和其他不相干内容太多。怎么能批量提取出新闻标题和正文呢?GeneralNewsExtractor(GNE)是一个通用新闻网站正文抽取模块,输入一篇新闻网页的HTML,输出正文内容、标题、作者、发布时间、正文中的图片地址和正文所在的标签源代码。GNE在提取今日头条、......
  • UDP编程
    字节序概念:是指多字节数据的存储顺序小端格式:将低位字节数据存储在低地址(LSB)大端格式:将高位字节数据存储在低地址(MSB)特点1、网络协议指定了通讯字节序—大端2、只有在多字节数据处理时才需要考虑字节序3、运行在同一台计算机上的进程相互通信时,一般不用考虑字节序4、异构......
  • Luogu P3390 【模板】矩阵快速幂
    【模板】矩阵快速幂题目背景一个\(m\timesn\)的矩阵是一个由\(m\)行\(n\)列元素排列成的矩形阵列。即形如\[A=\begin{bmatrix}a_{11}&a_{12}&\cdots&a_{1n}\\a_{21}&a_{22}&\cdots&a_{2n}\\\vdots&\vdots&\ddots&......