3个回答
展开全部
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int> v2(10);//对象中有10个元素
vector<int>::size_type ix=0;
// v2.push_back(10);//注释掉的这句用来检测添加新元素的时候的容量和元素个数的关系
cout<<v2.capacity()<<endl;//输出容器的容量。
cout<<v2.size()<<endl;//输出容器中的元素个数
while(ix!=v2.size()){
cout<<v2[ix++]<<" ";
}//通过下标输出容器中的元素
cout<<endl;
for(vector<int>::iterator iter=v2.begin();iter!=v2.end();++iter){
cout<<*iter<<" ";
}//通过迭代器输出容器中的元素
cout<<endl;
system("pause");
return 0;
}
/*因为vector的元素是连续存储的,当给容器中添加元素时,如果没有可以容纳新元素的空间,那么vector必须重新分配存储空间,用来存放原来的元素以及新添加的元素,最后撤销旧的存储空间,如果vector每次添加元素都分配和撤销内存,效率会很低。
capacity操作获取在容器需要分配更多的内存空间之前能够存储的元素总数。*/
#include<vector>
using namespace std;
int main()
{
vector<int> v2(10);//对象中有10个元素
vector<int>::size_type ix=0;
// v2.push_back(10);//注释掉的这句用来检测添加新元素的时候的容量和元素个数的关系
cout<<v2.capacity()<<endl;//输出容器的容量。
cout<<v2.size()<<endl;//输出容器中的元素个数
while(ix!=v2.size()){
cout<<v2[ix++]<<" ";
}//通过下标输出容器中的元素
cout<<endl;
for(vector<int>::iterator iter=v2.begin();iter!=v2.end();++iter){
cout<<*iter<<" ";
}//通过迭代器输出容器中的元素
cout<<endl;
system("pause");
return 0;
}
/*因为vector的元素是连续存储的,当给容器中添加元素时,如果没有可以容纳新元素的空间,那么vector必须重新分配存储空间,用来存放原来的元素以及新添加的元素,最后撤销旧的存储空间,如果vector每次添加元素都分配和撤销内存,效率会很低。
capacity操作获取在容器需要分配更多的内存空间之前能够存储的元素总数。*/
展开全部
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> v2(10);
v2.push_back(15);
for(int i=0; i<v2.size(); i++)
{
cout<<v2[i]<<endl;
}
system("pause");
return 0;
}
这是一个简单的示例,vector可以直接当数组访问,利用v2.size()可以得到vector里面实际的元素个数。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-09-20
展开全部
vector<int> a(10, 42);
vector<int> b{ 42, 42, 42, 42, 42, 42 };
vector<int> c = { 1, 2, 3, 4, 56, 55 };
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询