C++语法笔记 – 泛型程序设计与C++标准库
本文由发表于6年前 | C++ | 评论数 1 |  被围观 5,123 views+

命名空间:


声明一个命名空间NS

namespace NS {
	class File;
	void Fun();
}


引用标识符的方法:

NS :: File obj;

在新的C++标准程序库中,所有标识符都声明在命名空间std中。

头文件:

为了使用STL中的组件,必须使用#include命令包含一个或多个头文件:

< stack >
标准模板库相关概念和术语
1、容器:容器类是容纳、包含一组元素或元素集合的对象。
2、适配器:适配器时一种接口,为已有的类提供新的接口。
3、迭代器:迭代器时面向对象版本的指针,它们提供了访问容器和序列中每个元素的方法。实际上指针也是一种迭代器
4、算法:C++标准模板库中包含了70多个算法,这些算法覆盖了相当大地应用领域。
5、容器的接口:所谓接口是指容器的方法和运算符。
C++标准模板库中的容器:


顺序容器:

STL提供了向量、列表和双端队列3个顺序容器。

顺序容器的接口:

1、插入方法:push_front(),push_back() insert()
2、删除方法:pop_font(),pop_back() erase(L) clear()

向量容器:vector

双端队列容器:deque

列表容器:list


容器适配器:

容器适配器时用来扩展7中基本容器的,是修改和调整其他类接口的类。

标准栈容器:stack
标准队列容器:queue


迭代器:

迭代器是面向对象版本的指针,迭代器提供了访问容器序列中每个元素的方法。

迭代器的类型:

STL迭代器主要包括5种基本迭代器类别:输入、输出、前向、双向和随机访问,以及两种迭代器适配器:逆向迭代器适配器和插入迭代器适配器

迭代器相关的辅助函数:

advance() distance() iter_swap()


标准C++库中的算法:

STL通用算法调用形式:

template <typename InputIterator, typename OutputIterator>
OutputIterator copy(InputIterator first, InputIterator last, OutputIterator result);
1、不可变序列算法
2、可变序列算法
3、排序相关算法
4、数值算法
函数对象:

函数对象时STL提供的第四类主要组件,它使得STL的应用更加灵活方便,从而增强了算法的通用性。

所谓函数对象,其实就是一个行为类似函数的对象,它可以不需要参数,也可以带有若干个参数,其功能是获取一个值,或者改变操作的状态。

在C++中,任何普通的函数和任何重载了调用运算符operator()的类的对象都满足函数对象的特征,因此都可以作为函数对象传递给算法作为参数使用。

除了文章中有特别说明,均为IT宅原创文章,转载请以链接形式注明出处。
本文链接:http://www.itzhai.com/c-syntax-notes-generic-programming-and-c-standard-library.html
关键字: , ,
arthinking Java技术交流群:280755654,入门群:428693174 more
分享到:
 
2011 9/3
如果您有更好的原创技术博文或者观点,欢迎投稿:admin@itzhai.com,或者关注订阅左侧浮动面板的微信号订阅IT宅itread)发送消息。
C++推荐专题
C++
文章评论
    一条评论
  1. iphone 5 design 2011年09月06日14:53:15  #-49楼 回复 回复

    Rather! This was a very fantastic submit. Thanks for the supplied data.

给我留言

有人回复时邮件通知我
C++的相关文章
随机文章 本月热门 热评
1 数据结构笔记 – 排序算法 简单选择排序算法 2011/9/20
2 C语言语法笔记 – 自定义函数的相关知识 变量的存储类型 2011/8/30
3 jQuery上传插件Uploadify的使用例子和相关资料 2012/1/11
4 Java Web笔记 – Servlet技术介绍 生命周期 核心API 类方法调用顺序 2011/11/10
5 C++语法笔记 – 多态性 2011/9/3
6 Java基础笔记 – Java IO介绍以及File类的介绍和基本使用 2011/10/20
友情推荐 更多
破博客 文官洗碗安天下,武将打怪定乾坤。多么美好的年代,思之令人泪落。
Mr.5's Life 白天是一名程序员,晚上就是个有抱负的探索者
行知-追寻技术之美 关注大数据,分布式系统
我爱编程 编程成长轨迹
Cynthia's Blog 学习笔记 知识总结 思考感悟
 
猜您喜欢
欢迎关注我的公众号 IT宅
关于IT宅 文章归档

IT宅中的文章除了标题注明转载或有特别说明的文章,均为IT宅的技术知识总结,学习笔记或随笔。如果喜欢,请使用文章下面提供的分享组件。转载请注明出处并加入文章的原链接。 感谢大家的支持。

联系我们:admin@itzhai.com

Theme by arthinking. Copyright © 2011-2015 IT宅.com 保留所有权利.