首页
快讯
工具箱
门户
导航
云销售
搜索
登录
注册
首页
话题
小组
问答
好文
用户
我的社区
域名交易
唠叨
首页
小组
C/C++/C#
C/C++/C#
202071 帖子
7 成员
创建于 2025-05-20
组长:
啊龙
加入小组
本小组主要为进行C/C++技术交流而开设的技术论坛,社区版主及管理员在此分享学习资源供社区学员进行学习、交流、提问及解答问题。对C/C++感兴趣的朋友可随时关注本版块。
编程语言
软件编程
发布帖子
全部
交流
分享
教程
程序
[教程]
C++ multimap(STL multimap)的使用详解
multimap 容器保存的是有序的键/值对,但它可以保存重复的元素。multimap 中会出现具有相同键的元素序列,它们会被添加到容器中。multimap 和 map 有相同范围的构造函数,默认的比...
风轻y
发表于
192 天前
0
52
[教程]
C++ tuple(STL tuple)模板用法详解
tuple 模板是 pair 模板的泛化,但允许定义 tuple 模板的实例,可以封装不同类型的任意数量的对象,因此 tuple 实例可以有任意数量的模板类型参数。tuple 模板定义在 tuple ...
风轻y
发表于
192 天前
0
59
[教程]
C++ pair(STL pair)类模板的用法详解
我们已经知道 pair 对象是如何封装键及其关联的对象,也了解了 pair 对象是如何表示map容器中的元素的。一般来说,pair 对象可以封装任意类型的对象,可以生成任何想生成的 pair 对象,可...
风轻y
发表于
192 天前
0
49
[教程]
C++ map(STL map)删除元素(erase函数删除元素)详解
map 的成员函数 erase() 可以移除键和参数匹配的元素,然后返回所移除元素的个数,例如:std::map people {{ "Fred", 45}, {"Joa...
风轻y
发表于
192 天前
0
68
[教程]
C++ map获取(访问)元素详解
我们已经知道,可以获取 map 容器的开始和结束迭代器以及反向迭代器,它们都可以访问容器中的所有元素。map 的成员函数 at() 返回的是参数键对应的对象。如果这个键不存在,就会拋出 out_of_...
风轻y
发表于
192 天前
0
56
[教程]
C++ map(STL map)构造元素(emplace和emplace_hint函数)详解
map 容器的成员函数 emplace() 可以在适当的位置直接构造新元素,从而避免复制和移动操作。它的参数通常是构造元素,也就是 pair 对象所需要的。只有当容器中现有元素的键与这个元素的键不同时...
风轻y
发表于
192 天前
0
72
[教程]
C++ map插入数据(STL map插入数据)详解
map 容器的成员函数 insert() 有多个版本,它们可以在 map 中插入一个或多个 pair 对象。只能插入 map 中不存在的元素。下面这个代码片段展示了如何插入单个元素:std::map ...
风轻y
发表于
192 天前
0
134
[教程]
C++ map的创建(STL map的创建)详解
map 类模板有 4 个类型参数,但一般只需要指定前两个模板参数的值。第 1 个是键的类型,第 2 个是所保存对象的类型,第 3 个和第 4 个模板参数分别定义了用来比较键的函数对象的类型以及为 ma...
风轻y
发表于
192 天前
0
55
[教程]
C++ map是什么
序列容器是管理数据的宝贵工具,但对大多数应用程序而言,序列容器不提供方便的数据访问机制。举个简单的示例,当我们用它处理姓名和地址时,在这种场景下,序列容器可能并不能如我们所愿。一种典型的方法是通过名称...
风轻y
发表于
192 天前
0
49
[教程]
C++优先级队列存储智能指针详解
现在主要讲解智能指针的使用。这和原生指针在本质上是相同的,除非想要自己负责删除它们所指向的对象。当生成优先级队列或堆时,需要一个顺序关系来确定元素的顺序。当它们保存的是原生指针或智能指针时,总是需要为...
风轻y
发表于
192 天前
0
44
[教程]
C++序列容器存储智能指针详解
通常用容器保存指针比保存对象更好,而且大多数时候,保存智能指针比原生指针好。下面是一些原因:在容器中保存指针需要复制指针而不是它所指向的对象。复制指针通常比复制对象快。在容器中保存指针可以得到多态性。...
风轻y
发表于
192 天前
0
69
[教程]
C++堆用法详解
堆(heaps)不是容器,而是一种特别的数据组织方式。堆一般用来保存序列容器。堆很重要,很多不同的计算机进程中都使用了它们。为了弄明白堆是什么,首先需要明白树是什么,因此首先说明树这种数据结构是什么。...
风轻y
发表于
192 天前
0
55
[教程]
C++ priority_queue(STL priority_queue)用法详解
不出所料,priority_queue 容器适配器定义了一个元素有序排列的队列。默认队列头部的元素优先级最高。因为它是一个队列,所以只能访问第一个元素,这也意味着优先级最高的元素总是第一个被处理。但是...
风轻y
发表于
192 天前
0
60
[教程]
C++ queue(STL queue)用法详解
只能访问 queue 容器适配器的第一个和最后一个元素。只能在容器的末尾添加新元素,只能从头部移除元素。许多程序都使用了 queue 容器。queue 容器可以用来表示超市的结账队列或服务器上等待执行...
风轻y
发表于
192 天前
0
50
[教程]
C++ stack(STL stack)用法详解
容器适配器是一个封装了序列容器的类模板,它在一般序列容器的基础上提供了一些不同的功能。之所以称作适配器类,是因为它可以通过适配容器现有的接口来提供不同的功能。stack容器适配器中的数据是以 LIFO...
风轻y
发表于
192 天前
0
69
[教程]
C++自定义迭代器(STL自定义迭代器)的实现详解
迭代器对于任何自定义的类序列都是一个强大的附加工具。它允许我们将算法运用到有自定义类元素的容器上。可能会出现一种情形,没有可以满足我们需要的标准 STL 容器,这时候就需要定义一个自己的容器。我们的容...
风轻y
发表于
192 天前
0
62
[教程]
C++ forward_list用法详解
forward_list 容器以单链表的形式存储元素。forward_list 的模板定义在头文件 forward_list 中。fdrward_list 和 list 最主要的区别是:它不能反向遍历...
风轻y
发表于
192 天前
0
63
[教程]
C++ list(STL list)访问(获取)元素方法详解
list 的成员函数 front() 和 back(),可以各自返回第一个和最后一个元素的引用。在空 list 中调用它们中的任意一个,结果是未知的,因此不要这样使用。可以通过迭代器的自增或自减来访问...
风轻y
发表于
192 天前
0
64
[教程]
C++ list(STL list)排序及合并元素方法详解
sort() 函数模板定义在头文件 algorithm 中,要求使用随机访问迭代器。但 list 容器并不提供随机访问迭代器,只提供双向迭代器,因此不能对 list 中的元素使用 sort() 算法。...
风轻y
发表于
192 天前
0
58
[教程]
C++ list(STL list)删除元素方法详解
对于 list 的成员函数 clear() 和 erase(),它们的工作方式及效果,和前面的序列容器相同。list 容器的成员函数 remove() 则移除和参数匹配的元素。例如:std::list...
风轻y
发表于
192 天前
0
58
[教程]
C++ list(STL list)增加和插入元素详解(insert成员函数插入元素)
可以使用 list 容器的成员函数 push_front() 在它的头部添加一个元素。调用 push_back() 可以在 list 容器的末尾添加一个元素。在下面这两个示例中,参数作为对象被添加:s...
风轻y
发表于
192 天前
0
67
[教程]
C++ list(STL list)使用、创建和初始化
list 容器模板定义在 list 头文件中,是 T 类型对象的双向链表。list 容器具有一些 vector 和 deque 容器所不具备的优势,它可以在常规时间内,在序列已知的任何位置插入或删除元...
风轻y
发表于
192 天前
0
65
[教程]
C++ deque修改(替换、更改)元素详解
deque 的成员函数 assign() 可以替换现有的所有元素。它有三个重版版本;替换的新内容可以是由初始化列表指定的元素,也可以是由迭代器指定的一段元素,或是一个特定对象的多个副本。这里展示了如何...
风轻y
发表于
192 天前
0
52
[教程]
C++ deque添加和删除元素方法详解
deque 和 vector 都有成员函数 push_back() 和 pop_back(),它们在序列尾部添加或删除元素的方式相同。deque 也有成员函数 push_front() 和 pop_f...
风轻y
发表于
192 天前
0
55
[教程]
C++ deque获取(访问)元素方法详解
可以使用下标运算符来访问 deque 容器中的元素。这个操作和 vector 容器中的类似,所以下标也没有做边界检查。deque 容器中的元素是序列,但是内部的存储方式和 vector 不同。它组织元...
风轻y
发表于
192 天前
0
57
[教程]
C++ deque使用、创建及初始化详解
deque,一个定义在 deque 头文件中的容器模板,可以生成包含 T 类型元素的容器,它以双端队列的形式组织元素。可以在容器的头部和尾部高效地添加或删除对象,这是它相对于 vector 容器的优势...
风轻y
发表于
192 天前
0
64
[教程]
C++ vector删除元素(数据)详解
正像所说的那样,只能通过容器的成员函数来删除元素。可以通过使用 vector 的成员函数 clear() 来删除所有的元素。例如:std::vector data(100, 99);// Contai...
风轻y
发表于
192 天前
0
71
[教程]
C++ vector插入元素(数据)详解
通过使用成员函数 emplace(),可以在 vector 序列中插入新的元素。对象会在容器中直接生成,而不是先单独生成对象,然后再把它作为参数传入。emplace() 的第一个参数是一个迭代器,它确...
风轻y
发表于
192 天前
0
70
[教程]
C++ vector添加(增加)元素
记住,向容器中添加元素的唯一方式是使用它的成员函数。如果不调用成员函数,非成员函数既不能添加也不能删除元素。这意味着容器对象必须通过它所允许的函数去访问,迭代器显然不行。可以通过使用容器对象的 pus...
风轻y
发表于
192 天前
0
83
[教程]
C++ vector迭代器及用法
正如期望的那样,vector 容器实现了所有可以返回迭代器的成员函数,包括 const 迭代器和 nonconst 迭代器,以及反向迭代器。vector 容器的迭代器是随机访问迭代器。当然,也可以通过...
风轻y
发表于
192 天前
0
61
«
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
成员
更多
gitee开源探索者
北极云
AIGC
csdn大佬
风轻y
宁儿
啊龙
站长交流