C++——vector

1 篇文章 0 订阅

Vector容器
Vector are sequence containers representing arrays that can change in size.

void test_vector1()
{
	vector<int> v1;
	v1.push_back(1);
	v1.push_back(2);
	v1.push_back(3);
	v1.push_back(4);

	for(size_t i = 0; i < v1.size(); ++i)
	{
		cout << v1[ i ] << " " ;
	}
	cout << endl;
}
	vector<int>::iterator it1 = v1.begin();
	while (it1 != v1.end())
	{
		cout << *it1 << " " ;
		++it1 ;
	}
	cout << endl;

	for(auto e: v1)	
	{
		cout << e << " " ;
	}
	cout << endl:

	vector<int> v2(10, int());
	cout << int() <<endl;

Vector迭代器失效问题
 insert/erase 导致迭代器失效
   

bit::vector

	// vector<int> :: reverse_iterator rit1 =  v1.rbegin();
	auto  rit1 =  v1.rbegin();
	while (rit1  !=  v1.rend())
	{
		cout << *rit1 << " " ;
		++rit1;
	}

void print_vector(const  vector<int>& v)
{
	vector<int>::const_iterator it=v.begin();
	while(it != v.end())
	{
		cout << *it << " ";
		++it;
	}
	cout << endl; 
}

Vector 如何增容?增容比一定是以2倍增容吗?
vs: 1.5倍
g++ : 2倍

Vectors are sequence containers representing arrays that can change in size.

Member function(成员函数)作用(目的)
constructor构造vector
destructor摧毁vector
operator=赋值内容
Iterator(迭代器)作用(目的)
begin返回开头迭代器
end返回末尾迭代器
rbegin返回反向开头反向迭代器
rend返回反向末尾的反向迭代器
cbegin返回开头常量迭代器
cend返回末尾常量迭代器
crbegin返回反向开头常量反向迭代器
crend返回反向末尾常量反向迭代器
Capacity作用(目的
size返回大小
max_size返回最大值
resize改变大小
capacity返回存储区域的大小
empty判断是否为空
reserve请求一个容量的改变
shrink_to_fit缩减容量
Element access作用(目的)
operator[]访问元素
at访问元素
front访问第一个元素
back访问最后一个元素
data (c++11)访问数据
Modifiers作用(目的)
assign增加vector内容
push_back在末尾增加元素
pop_back删除最后一个元素
insert插入 元素
erase删除元素
swap交换内容
clear清空内容
emplace构造并插入元素
emplace_back构造并在末尾插入元素
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值