STL vector 代码测试

#include
#include
#include
#include
#include
#include
using namespace std;

// vector,动态数组,自动分配空间, array,固定数组;
void STLDefine()

{
struct STU
{
int age;
} ;

vector<string> vec;   //相当于字符串数组 char; 

}
void STLConstructor()
{
vector vec;

//cout << vec[0]; //不能输出 

vector<int> vec1(5);

vector<int> vec2(5,12);  // char ,'a' 

vector<int> vec3(vec1);

for (int i=0; i<5; i++)
{
	cout << vec3[i] <<endl;  // 5个0 
 } 

///===========================
vector<int>::iterator ite = vec2.begin();
vector<int>::iterator ite1 = vec2.end();

vector<int> vec4(ite, ite1);

for (int i=0; i < 5; i++)
{
	cout << vec4[i] <<endl;
}

}
//
void STLCapacity()
{

vector <int> vec(4);
cout << vec.empty();

// vec.resize(3); 容量不变
// vec.reserve(10); //10
cout << vec.size() << endl; //4
cout << vec.capacity() <<endl;//4

// vector vec1(5);
// cout << vec1.capacity() <<endl; //5

// vec1.push_back(1); //5+5/2==7
// cout << vec1.capacity() << endl;

// vec1.push_back(1);
// vec1.push_back(1); //7+7/2==10

// cout << vec1.capacity() << endl;

}

//输出

void fun(int i)
{
cout << i << endl;
}

void STLDO()
{
vector vec;

for (int i=0;i<10;i++)
{
	vec.push_back(i);  //返回尾巴 
} 

// vector ::iterator ite = vec.begin() ;

// for(ite; ite != vec.end(); ite++)
// {
// cout << *ite <<endl;
// }

for_each(vec.begin(), vec.end(),fun);

//
// for(int i=0;i<10;i++)
// {
// cout << vec[i] <<endl;
// }
// for(int i=0;i<10;i++)
// {
// cout << vec。at(i) <<endl;
// }

// cout << vec.back();
}

void STLADD()
{
vector vec;

// for (int i=0;i<10;i++)
// {
// vec.push_back(i);
// }
vec.push_back(1);
vec.push_back(2);
vec.push_back(3);
vec.push_back(4);
vec.push_back(5);

    //sort(vec.begin(),vec.end(),greater<int>()); //排序 ,从大到小,不加greater从小到大 
    for_ each(vec1.begin(), vec.end(),fun);

// vec.insert(vec.begin()+2,12);
// vec.insert(vec.begin())+2,5,12);

// vector vec1(5,1); //里面5个1

// vec.insert(vec.begin()+3, vec1.begin(), vec1.begin()+3); //插入前三个 ,小数点

// vec.pop_back(); //尾删除
// vec.erase(vec.begin()+3,vec.end()); //从第三个到最后一个删除

// vec.swap(vec1);

for_ each(vec1.begin(), vec.end(),fun); //遍历 

// cout << (vec > vec1 )<< endl ;

     srand(unsigned int)time(0);
     
     random_shuffle(vec.begin(),vec.end());
     
     for_ each(vec1.begin(), vec.end(),fun);

}
int main()
{
//STLDefine();
//STLConstructor();
//STLCa[acity();
STLDO();

system("pause");
return 0;

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值