C/C++教程

[14] 初识C++STL(简单介绍)

本文主要是介绍[14] 初识C++STL(简单介绍),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

初识C++STL(简单介绍)

什么是泛型程序设计

泛型编程就是编写不依赖于具体数据类型的程序。C++中,模板是泛型程序设计的主要工具。泛型程序设计的主要思想是将算法从特定的数据结构中抽象出来,使算法成为通用、可以作用于各种不同的数据结构。也就是,同一个模板,能做的功能差不多,数据结构不同的时候就有对应的模板使用,避免重复造轮子。

什么是STL

STL,就是Standard Template Library的简称。中文翻译过来就是"标准模板库"。1994年被纳入C++标准库。从此,STL是C++内容的一大部分。STL也是C++语法里最难学的一部分。

STL提供了一些常用的数据结构和算法。例如向量(有时候也称为动态数组)、数组(STL里也有自己的数组,用法和标准库里的数组用法差不多)、链表、栈、队列等。算法就有排序、查找等。

STL四大件

一、容器

容器是容纳一组元素的对象。容器类库中包括13中基本容器:向量(vector)、双端队列(deque)、列表(list)、单项链表(forward_list)、数组(array)、集合(set)、多重集合(multiset)、映射(map)、多重映射(multimap)、无序映射(unorder_map)、无序集合(unorder_set)、无序多重映射(unorder_multimap)、无序多重集合(unorder_multiset)。

二、迭代器

迭代器(iterator)提供了顺序往容器中每个元素的方法。迭代器是泛化的指针,使用的时候和指针是差不多的,但是STL里的迭代器和指针不是同类型的,所以指针和迭代器是不能相互赋值的。

三、函数对象

函数对象是一个行为类似函数对象。函数对象是泛化的函数,和一般的函数差不多一样的效果,一般函数怎么调用,这个函数对象就怎么调用就行。

四、算法

STL包含70多个算法。这些算法覆盖了相当大的应用领域。一般算法能用到的,STL基本提供了。平常的算法怎么使用,在STL里面的算法就怎么使用。

小结

算法,用C语言也是可以实现的,但C语言的算法,可能每用一次就要自己写一次,不利于快速开发,说白了C++就要做一些和C语言不一样的东西。STL就是把基本的数据结构和算法弄成模板,基本的操作都包含了。直接拿出来用就可以了。

这篇关于[14] 初识C++STL(简单介绍)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!