第10章C标准模板库.ppt
文本预览下载声明
第十章 C++标准模板库;主要内容;泛型程序设计;命名空间(Namespace);命名空间(Namespace);容器;容器的接口;适配器;迭代器;算法;顺序容器;顺序容器——向量;//10_1.cpp
#include iostream
#include iomanip
#include vector //包含向量容器头文件
using namespace std ;
int main()
{
vectorint A(10);
int n;
int primecount = 0, i, j;
coutEnter a value=2 as upper limit: ;
cin n;
A[primecount++] = 2; ; for(i = 3; i n; i++)
{ if (primecount == A.size())
A.resize(primecount + 10);
if (i % 2 = = 0)
continue;
j = 3;
while (j = i/2 i % j != 0)
j += 2;
if (j i/2) A[primecount++] = i;
}
for (i = 0; iprimecount; i++)//输出质数
{ coutsetw(5)A[i];
if ((i+1) % 10 == 0) //每输出10个数换行一次
cout endl;
}
coutendl;
};顺序容器——双端队列;顺序容器——列表;//10_3.cpp
#include iostream
#include list
using namespace std ;
int main()
{
listint Link; //构造一个列表用于存放整数链表
int i, key, item;
for(i=0;i 10;i++)// 输入10个整数依次向表头插入
{
cinitem;
Link.push_front(item);
}
coutList: ; // 输出链表; listint::iterator p=Link.begin();
while(p!=Link.end())//输出各节点数据,直到链表尾
{ cout *p ;
p++; //使P指向下一个节点
}
cout endl;
cout 请输入一个需要删除的整数: ;
cin key;
Link.remove(key);
cout List: ; // 输出链表
p=Link.begin(); // 使P重新指向表头
while(p!=Link.end())
{ cout *p ;
p++; // 使P指向下一个节点
}
cout endl;
};容器适配器;什么是迭代器;迭代器的类型;迭代器适配器;迭代器相关的辅助函数;标准C++库中的算法;算法应用举例;函数对象
显示全部