stl 静态数组初始化vector及pair,vector混合使用

来源:互联网 发布:顶尖数据恢复破解版 编辑:程序博客网 时间:2024/06/09 20:19
#include "iostream"
#include "vector"


using namespace std;


//静态数组初始化vector, pair和vector混合使用
void stlTest()
{
struct baseStruct 
{
int a;
int b;


baseStruct(int x, int y) : a(x), b(y)
{


}
};


static baseStruct staticArrayOne[] = {baseStruct(1,1), baseStruct(2,2), baseStruct(3,3), baseStruct(4,4)};
static baseStruct staticArrayTwo[] = {baseStruct(5,5), baseStruct(6,6), baseStruct(7,7), baseStruct(8,8)};


enum enumType
{
First,
Second,
};


typedef pair<vector<baseStruct>, enumType> TestPair;


#define countof(array)(sizeof(array)/sizeof(array[0]))


static TestPair staticPair[] =
{
make_pair(vector<baseStruct>(staticArrayOne, staticArrayOne + countof(staticArrayOne)), First),
make_pair(vector<baseStruct>(staticArrayTwo, staticArrayTwo + countof(staticArrayTwo)), Second),
};


static vector<TestPair> staticPairVec(staticPair, staticPair + countof(staticPair));


for (auto it = staticPairVec.begin(); it != staticPairVec.end(); ++it)
{
if ((*it).second == Second)
{
cout << "find" << endl;
return;
}
}
}


void main()
{
stlTest();
}
0 0
原创粉丝点击