linux下练习 c++ 普通容器的使用

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: /* 迭代器 .begin(),.end() ,.rbegin() , .rend() 插入:.insert(position,element) 删除:.
/*
迭代器
.begin(),.end() ,.rbegin() , .rend()
插入:.insert(position,element)
删除:.erase(position),.erase(pos_begin,pos_end)
清除:.clear()
大小:.size(), .max_size(), .empty()
交换:.swap(c2) , swap(c1,c2)
运算符:=,>,<,>=,<=,==,!=
*/
#include <iostream>
using namespace std;
#include <vector>
#include <algorithm>

#ifndef print_fun
#define print_fun
template<typename T>
///显示序列数据
void print(T b,T e)
{
	bool isExit=false;
	while (b!=e)
	{
		cout<<*b++<<' ';
		isExit=true;
	}
	if(isExit) cout<<endl;

}
#endif
int main()
{
	int a[5]={44,33,55,66,11};
	vector<int> vi(a,a+5);//用数组初始化一个迭代器vi
	cout<<vi.size()<<endl;
	sort(vi.begin(),vi.end());//元素排序
	vector<int>::iterator b= vi.begin();
	print(vi.begin(),vi.end());//正向迭代器
	print(a,a+5);
	print(vi.rbegin(),vi.rend());//反向迭代器
	vi.insert(vi.begin()+1,48);//插入到第2
	vi.insert(vi.end(),49);//插入到最后
	vi.insert(vi.end()-1,57);
	print(vi.begin(),vi.end());
	vi.erase(vi.end()-1);//删除最后一个
	print(vi.begin(),vi.end());
	vi.erase(vi.begin()+2,vi.end()-2);//删除一个区间
	print(vi.begin(),vi.end());
	vector<int> v2(a,a+5);
	vi.swap(v2);//vi与v2交换
	print(vi.begin(),vi.end());
	vi.swap(v2);//vi再与v2交换回去 
	print(vi.begin(),vi.end());
	vi.clear();//清空容器
	cout<<vi.size()<<endl;
	return 0;
}


 

 

相关文章
|
14天前
|
Cloud Native Linux 开发者
【Docker】Docker:解析容器化技术的利器与在Linux中的关键作用
【Docker】Docker:解析容器化技术的利器与在Linux中的关键作用
|
4天前
|
JSON Java Linux
【探索Linux】P.30(序列化和反序列化 | JSON序列化库 [ C++ ] )
【探索Linux】P.30(序列化和反序列化 | JSON序列化库 [ C++ ] )
20 2
|
4天前
|
存储 安全 算法
【Linux | C++ 】基于环形队列的多生产者多消费者模型(Linux系统下C++ 代码模拟实现)
【Linux | C++ 】基于环形队列的多生产者多消费者模型(Linux系统下C++ 代码模拟实现)
21 0
|
4天前
|
算法 Linux 数据安全/隐私保护
【Linux | C++ 】生产者消费者模型(Linux系统下C++ 代码模拟实现)
【Linux | C++ 】生产者消费者模型(Linux系统下C++ 代码模拟实现)
11 0
|
5天前
|
存储 设计模式 算法
【C++/STL】stack和queue(容器适配器、优先队列、双端队列)
【C++/STL】stack和queue(容器适配器、优先队列、双端队列)
12 1
|
11天前
|
存储 Linux 文件存储
Linux使用Docker部署Traefik容器并实现远程访问管理界面-1
Linux使用Docker部署Traefik容器并实现远程访问管理界面
|
11天前
|
存储 算法 C++
详解C++中的STL(标准模板库)容器
【4月更文挑战第30天】C++ STL容器包括序列容器(如`vector`、`list`、`deque`、`forward_list`、`array`和`string`)、关联容器(如`set`、`multiset`、`map`和`multimap`)和容器适配器(如`stack`、`queue`和`priority_queue`)。它们为动态数组、链表、栈、队列、集合和映射等数据结构提供了高效实现。选择合适的容器类型可优化性能,满足不同编程需求。
|
12天前
|
Linux Shell 虚拟化
【Linux学习】Linux 的虚拟化和容器化技术
【Linux学习】Linux 的虚拟化和容器化技术
|
13天前
|
存储 Linux C++
【进厂修炼 - First week】Linux & C++
【进厂修炼 - First week】Linux & C++
|
13天前
|
Linux 网络安全 Docker
【Linux】-docker配置容器并打包成镜像
【Linux】-docker配置容器并打包成镜像