`
mylove2060
  • 浏览: 336026 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

STL-容器间的复制list&vector

阅读更多
#include <iostream>
#include <list>
#include <string>
#include <vector>

int main()
{
	//copy list to list
	std::list<std::string> oldList;
	std::list<std::string> newList;
	oldList.push_back("test1");
	oldList.push_back("test2");
	oldList.push_back("test3");
	
	std::copy(oldList.begin(), oldList.end(), std::back_inserter(newList));	

	//copy vector to vector
	std::vector<std::string> oldVector;
	std::vector<std::string> newVector;
	oldVector.push_back("test4");
	oldVector.push_back("test5");
	oldVector.push_back("test6");
	std::copy(oldVector.begin(), oldVector.end(), std::back_inserter(newVector));	

	//copy list to vector
	std::list<std::string> list1;
	std::vector<std::string> vector1;
	list1.push_back("test7");
	list1.push_back("test8");
	list1.push_back("test9");
	std::copy(list1.begin(), list1.end(), std::back_inserter(vector1));	

	//copy vector to list

	std::list<std::string> vector2;
	std::vector<std::string> list2;
	vector2.push_back("test10");
	vector2.push_back("test11");
	vector2.push_back("test12");
	std::copy(vector2.begin(), vector2.end(), std::back_inserter(list2));	
	return 0;
}

分享到:
评论

相关推荐

    STL -容器,string容器

    "STL容器:string容器" STL容器是C++标准模板库(Standard Template Library)中的一部分,提供了一系列的容器类来存储和管理数据。STL容器可以分为两大类:序列式容器和关联式容器。 序列式容器的特点是强调值的...

    C++ STL vector 容器介绍

    学习`vector`容器时,还需要理解其与其他STL容器如`deque`、`list`和`array`的区别,以便在不同的场景下选择最合适的容器。例如,`deque`在两端插入和删除更高效,`list`则适合频繁的插入和删除,而`array`是固定...

    pb_Stl-master.zip

    它包含了一系列高效的、泛型的容器(如vector、list、set等)、迭代器、算法和函数对象,极大地提高了C++程序员的工作效率。在Unity中,STL主要用来处理3D模型数据,特别是在导入和读取STL格式的3D模型时。 "pb_Stl...

    STL-Manual.rar_stl chm

    - 通过模板实现,STL容器和算法可以用于任意满足特定要求的类型,如具有复制构造函数和赋值操作符的类型。 7. 范围基础的for循环(Range-based for loop): - C++11引入的新特性,简化了遍历容器中的元素,如`...

    C++ STL--数据结构与算法实现(余文溪)示例程序代码.rar

    1. 容器(Containers):这是STL的基础,它们是存储数据的对象,如`vector`(动态数组)、`list`(双向链表)、`set`(红黑树实现的集合)、`map`(关联数组)等。每个容器都有其特定的内存管理和访问特性,开发者可以根据...

    三十分钟掌握STL----STL学习文档

    2. **容器(Containers)**:容器是一系列数据结构的模板类,如list、vector和deque。它们提供了存储和管理对象的方法。每个容器都有自己的特性和用途,例如,list适合频繁插入和删除,而vector更适合随机访问。 3....

    STL - 概要及容器 [兼容模式].rar

    STL容器通常会自动管理内存,如动态增长和收缩,这为程序员提供了便利,但也需要理解其背后的内存分配策略,以避免潜在的性能问题或内存泄漏。 最后,"More+Effective+C++中文.pdf"可能是《More Effective C++》一...

    STL-WInCE 标准模板库EVC

    使用EVC的调试工具,可以跟踪STL容器的使用情况,定位内存泄漏或性能瓶颈。 总之,STL-WinCE为Windows CE平台提供了丰富的数据结构和算法,使得开发者可以在资源受限的环境中编写高效、模块化的C++代码。了解和...

    sgi-stl-2.91.57源码及注释版.zip

    - 容器:如vector(动态数组)、list(双向链表)、deque(双端队列)、set(红黑树实现的集合)、map(红黑树实现的映射)等,它们提供了一种组织和管理数据的方式。 - 迭代器:作为访问容器元素的接口,迭代器允许...

    SGI-STL-.rar_STL_sgi stl

    4. 算法(Algorithms):STL提供了一套通用的函数,如排序、查找、交换、复制等,这些函数不依赖于特定的容器,因此可以在不同的数据结构上通用。 5. 功能对象(Function Objects)或称为仿函数(Functors):这些...

    经典推荐:STL-源码剖析

    1. 容器(Containers):如vector、list、deque、set、map等,它们提供了动态存储和管理数据的结构。例如,vector是一个动态数组,可以在任何位置插入和删除元素;list则是一个双向链表,支持快速的前向和后向遍历。...

    SGI-STL-code.zip

    1. **容器**:容器是STL中存储数据的主要结构,包括vector(动态数组)、list(双向链表)、deque(双端队列)、set(红黑树实现的集合)、map(红黑树实现的键值对映射)等。每个容器都有其特定的内存管理策略和...

    stl-boost-c++

    STL的核心组件包括容器(如vector、list、set、map等)、迭代器、算法和函数对象(functors)。这些组件的设计理念是基于泛型编程,使得代码更加灵活,易于维护,同时也提高了性能。 首先,让我们深入了解一下STL中...

    Effective STL-revised

    3. **STL容器的内部工作原理**:了解容器(如vector、list、deque等)的内存管理和插入/删除操作的效率,有助于优化代码。 4. **算法的高效应用**:例如,何时使用`std::find`,何时使用`std::find_if`,以及如何...

    sgi-stl-2.91.57-source.zip

    常见的容器有vector(动态数组)、list(双向链表)、deque(双端队列)、set(红黑树实现的集合)、map(键值对映射)等。每个容器都有自己的特点,适用于不同的场景。 2. 迭代器:迭代器是访问容器内元素的接口,...

    STL-GNU2.9.zip

    1. **容器**:STL的容器是一些类模板,如vector、list、deque、set、map等,它们可以存储、管理和组织元素。例如,`vector`是一种动态数组,可以方便地添加和删除元素;`list`是由节点组成的双向链表,插入和删除...

    sgi-stl-侯捷配套.rar

    在这个压缩包中的“sgi-stl-master”可能是一个包含了整个SGI STL源码树的文件夹,里面通常会有如`algorithm`、`vector`、`list`、`map`、`set`等核心头文件,这些文件分别对应了不同的数据结构和算法。 1. `...

    STL--源码剖析完整版.zip

    STL的主要组件包括容器(如vector、list、set等)、迭代器、算法和函数对象。侯捷先生是一位知名的C++专家,他的《STL源码剖析》一书深入解析了STL的内部实现,帮助开发者更好地理解和运用这个强大的工具。 1. 容器...

Global site tag (gtag.js) - Google Analytics