C++标准库中模板化的例子?

模板在 c++++ 标准库中的应用:vector 模板:用于存储和管理可动态增长的元素集合。map 模板:用于存储键值对,键可比较且值可任意类型。自定义模板类:允许创建可针对不同类型进行参数化的通用代码类。

C++标准库中模板化的例子?

C++ 标准库中的模板化示例

C++ 标准库广泛使用模板,提供可重复使用、类型安全且高效的代码。模板是用于创建通用代码的蓝图,它可以针对不同类型进行参数化。

vector 模板

立即学习“C++免费学习笔记(深入)”;

vector 是 C++ 标准库中一个常用的模板容器。它是一个动态数组,用于存储和管理元素集合。

#include int main() {  // 创建一个空 vector  std::vector v;  // 添加元素  v.push_back(1);  v.push_back(2);  v.push_back(3);  // 访问元素  for (int i = 0; i < v.size(); i++) {    std::cout << v[i] << " ";  }  // 输出:1 2 3  return 0;}

在这个示例中,vector 模板被用于存储 int 类型的数据。我们创建了一个空 vector,然后使用 push_back 方法添加了元素。可以通过 [] 操作符访问元素。

map 模板

map 是另一个模板容器,用于存储键值对。键可以是任何可比较的类型,而值可以是任何类型。

#include int main() {  // 创建一个空 map  std::map m;  // 添加键值对  m["Alice"] = 20;  m["Bob"] = 30;  // 访问值  std::cout << m["Alice"] << std::endl;  // 输出:20  return 0;}

在这个示例中,map 模板被用于存储 string 类型的键和 int 类型的值。我们创建了一个空 map,然后使用 [] 操作符添加了键值对。可以通过键名访问值。

自定义模板类

除了标准库提供的模板外,我们还可以创建自己的模板类。例如,我们可以创建一个模板类来查找元素的最小值或最大值:

template T find_max(T a, T b) {  return (a > b) ? a : b;}int main() {  int max_int = find_max(10, 20);  // 返回 20  double max_double = find_max(3.14, 2.71);  // 返回 3.14  return 0;}

在这个示例中,find_max 模板函数被用于查找两个元素的最小值或最大值。它可以针对任何可比较的类型进行参数化,如这个示例中所示。

以上就是C++标准库中模板化的例子?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1450210.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月18日 03:04:12
下一篇 2025年12月18日 03:04:21

相关推荐

发表回复

登录后才能评论
关注微信