您好,登录后才能下订单哦!
今天就跟大家聊聊有关如何理解STL,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
STL是Standard Template Library的简称,中文名标准模板库,惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。
从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。STL的目的是标准化组件,这样就不用重新开发,可以使用现成的组件。STL现在是C++的一部分,因此不用安装额外的库文件。
容器(containers)
迭代器(iterators)
空间配置器(allocator)
配接器(adapters)
算法(algorithms)
仿函数(functions)
序列式容器
数组(array);
向量(vector):连续存储的元素;
列表(list):有节点组成的双向链表;
双端队列(deque):连续存储的指向不同元素的指针所组成的数组。
适配器(在一般序列容器的基础上提供了不同的功能,用序列容器实现的新容器)
栈(stack);
队列(queue);
优先队列(priority_queue):元素的次序由作用于所存储的值对上的某种谓词决定的一种队列。
关联式容器
集合(set):由节点组成的红黑树,没有两个不同的元素能够拥有相同的次序;
多重集合(multiset):允许存在两个次序相等的元素的集合;
映射(map):由{键,值}对组成的集合;
多重映射(multimap):允许键对由相等的次序的映射
几乎STL提供的所有算法都是通过迭代器存取元素序列进行工作的,每一个容器都定义了其本身所专有的迭代器,用以存取容器中的元素。
看完上述内容,你们对如何理解STL有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。