c++vector容器-赋直操作讲解

简介: c++vector容器-赋直操作讲解

std::vector 是 C++ 标准模板库(STL)中的一个动态数组容器,它提供了在内存中连续存储一系列同类型元素的能力。对于 std::vector,赋值操作是一个常见的操作,它允许我们将一个向量的内容复制到另一个向量中。下面我们将详细讲解 std::vector 的赋值操作,并附上代码示例和讲解,以满足 1500 字的要求。

 

一、使用赋值运算符进行赋值

赋值运算符 = 是最直接的方式来赋值一个 std::vector。当使用赋值运算符时,右侧向量的内容会被复制到左侧向量中,如果左侧向量之前已有内容,则这些内容会被新内容替换。

 

代码示例

image.png image.png

讲解

在这个例子中,我们首先创建了一个包含五个元素的 vec1,然后创建了一个空的 vec2。接着,我们使用赋值运算符 = 将 vec1 的内容赋给 vec2。此时,vec2 包含了与 vec1 相同的内容。随后,我们修改了 vec1 的第一个元素,但 vec2 的内容没有受到影响,这是因为赋值操作执行的是深拷贝,即创建了原始向量内容的副本。

 

二、使用 assign 成员函数进行赋值

除了使用赋值运算符,我们还可以使用 assign 成员函数来赋值 std::vector。assign 成员函数提供了更多的灵活性,它允许我们根据迭代器范围、数组或其他容器来赋值。

 

代码示例

image.png image.png

讲解

在这个例子中,我们首先使用 assign 成员函数将 vec1 的内容赋给 vec2。然后,我们创建了一个 std::list 类型的容器 list1,并再次使用 assign 函数将 list1 的

目录
相关文章
|
2月前
|
存储 搜索推荐 C++
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器2
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器
55 2
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器2
|
2月前
|
存储 C++ 索引
【C++打怪之路Lv9】-- vector
【C++打怪之路Lv9】-- vector
23 1
|
2月前
|
安全 测试技术 C++
【C++篇】从零实现 C++ Vector:深度剖析 STL 的核心机制与优化2
【C++篇】从零实现 C++ Vector:深度剖析 STL 的核心机制与优化
65 6
|
2月前
|
编译器 C++
【C++】—— vector模拟实现
【C++】—— vector模拟实现
|
2月前
|
存储 C++ 容器
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器1
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器
55 5
|
2月前
|
存储 编译器 C++
【C++篇】揭开 C++ STL list 容器的神秘面纱:从底层设计到高效应用的全景解析(附源码)
【C++篇】揭开 C++ STL list 容器的神秘面纱:从底层设计到高效应用的全景解析(附源码)
59 2
|
2月前
|
算法 C++ 容器
C++之打造my vector篇(下)
C++之打造my vector篇(下)
30 0
|
2月前
|
存储 编译器 C++
C++之打造my vector篇(上)
C++之打造my vector篇(上)
29 0
|
2月前
|
算法 C++ 容器
【C++】—— vector使用
【C++】—— vector使用
|
2月前
|
存储 缓存 C++
C++番外篇——list与vector的比较
C++番外篇——list与vector的比较
23 0