STL六大组件

一、STL六大组件

STL提供六大组件,它们之间可以相互组合使用。

1、容器(containers)

容器用来存放数据,包括各种数据结构,如vector,list,deque,set,map等。从实现的角度来看,STL容器是一种class template。

2、算法(algorithms)

算法包括各种常用的sort,search,copy,erase, find等等。才实现的角度来看,STL算法是一种function template。

3、迭代器(iterators)

迭代器作为“泛型指针”,扮演容器和算法之间的粘合剂,用来连接容器和算法。从实现角度来看,迭代器是一种将operator*,operator->,operator++,operator--等指针相关操作进行重载的class template。所有的STL容器都带有自己专属的迭代器。原生指针也是一种迭代器。

所谓的原生指针就是我们定义的最普通的指针,形如  类型名  *指针名,类型名可以是基础类型int,double等,也可以是一个类。

当一个类将*和->操作符进行重载时,虽然也可以进行类似指针的操作,但是它已经不是原生指针。

4、仿函数(functors)

仿函数是让一个类看起来像一个函数。其实就是一种重载了operator()的class或者class template。

5、配接器(adapters)

一种用来修饰容器&#x


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部