【C++ Primer Plus习题】8.6

devtools/2024/11/20 2:23:07/

问题:

这里是引用

解答:

#include <iostream>
using namespace std;template <typename T>
T maxn(T arr[], int len)//通用
{T max = 0;for (int i = 0; i < len; i++){if (max < arr[i]){max = arr[i];}}return max;
}template<>
const char* maxn<const char*>(const char* c[], int len)
{const char* p = c[0];int size = strlen(p);for (int i = 1; i < len; i++){if (size < strlen(c[i])){p = c[i];}}return p;
}int main()
{int max = 0;double max1 = 0.0;int a1[6] = { 1,2,3,4,5,6 };double d1[4] = { 1.1,2.2,3.3,4.4 };max = maxn(a1, 6);max1 = maxn(d1, 4);cout << "int中最大的数为:" << max <<endl;cout << "double中最大的数为:" << max1 << endl;const char* p[5] = { "1","12","123","1234","12345" };const char* c= maxn(p, 5);cout << "字符数组中最长的字符为:" << c << endl;return 0;
}

运行结果:
在这里插入图片描述

考查点:

  • 模版函数
  • 模版函数具体化

注意:

  • 模版函数具体化会被优先调用
  • 可以自定义一些通用模版函数做不到的.
    在这里插入图片描述

2024年9月1日21:54:55


http://www.ppmy.cn/devtools/104754.html

相关文章

基于 ASP.NET的教材管理信息系统的设计与实现(最新定制开发,阿龙原创设计)✅

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

谷歌浏览器http自动跳转https问题

1.地址栏输入&#xff1a; chrome://net-internals/#hsts 2.找到底部Delete domain security policies一栏&#xff0c;输入想处理的域名&#xff0c;点击delete。 3.搞定了&#xff0c;再次访问http域名不再自动跳转https了。

【C++】智能指针——auto_ptr,unique_ptr,shared_ptr

目录 auto_ptr unique_ptr shared_ptr 并发问题 循环引用问题 个人主页&#xff1a;传送门——>东洛的克莱斯韦克 智能指针的原理&#xff1a;传送门——>智能指针的原理 auto_ptr 使用方法参考官方文档 传送门——>auto_ptr文档 auto_ptr并不是一个优秀的智能…

split对大文件(tar/tar.gz)文件进行分片及合并

文章目录 1、tar文件指定大小分片2、合并分片文件并解压 1、tar文件指定大小分片 split -b 4000M -d -a 3 cm-11.tar.gz cm-11.tar.gz.使用split命令&#xff0c;-b 4000M 表示设置每个分割包的大小&#xff0c;单位还是可以k -d "参数指定生成的分割包后缀为数字的形式 …

Python 生成随机的国内 ip

示例代码&#xff1a; import randomdef generate_random_cn_ip():# 中国大陆IP范围start_ip "36.54.0.0"end_ip "123.255.255.254"# 将IP地址转换为整数start_ip_num int(start_ip.replace(".", ""))end_ip_num int(end_ip.rep…

如何防范ddos 攻击

防护DDoS&#xff08;分布式拒绝服务&#xff09;攻击是一个复杂且多方面的任务&#xff0c;需要综合考虑网络架构、硬件设备、软件配置以及安全策略等多个方面。以下是一些主要的防护DDoS攻击的方法&#xff1a; 1. 流量清洗&#xff08;Traffic Scrubbing&#xff09; 定义…

.net dataexcel winform控件 更新 日志

增加 列宽度调整时动态显示列象素大小 更改列的宽度可以使用 column.Width属性进行修改

【无人机设计与控制】使用 Simulink 进行四轴飞行器/四旋翼飞行器仿真

摘要 本文介绍了如何使用Simulink进行四轴飞行器&#xff08;四旋翼&#xff09;仿真&#xff0c;通过建立详细的动力学模型和控制系统&#xff0c;实现对四旋翼无人机的姿态、位置和路径控制的精确仿真。该仿真环境不仅能够用于研究无人机的飞行控制性能&#xff0c;还可用于…