vectortest.cpp
来自「c++中关于stl的详细介绍 有多本书籍在里面」· C++ 代码 · 共 81 行
CPP
81 行
#include <algorithm>
#include <vector>
#include <iostream>
#include <stdio.h>
using namespace std;
typedef struct {
int index;
char data[256];
} MYNODE, *PMYNODE;
int global_index = 0;
inline bool findcondition(MYNODE node)
{
if (node.index == global_index)
{
return true;
}
else
{
return false;
}
}
inline bool sortcondition(MYNODE i, MYNODE j)
{
return (i.index < j.index);
}
int main()
{
vector<MYNODE> testdata;
int i = 0;
while (true)
{
MYNODE tmpnode;
if (scanf("%d, %s", &(tmpnode.index), &(tmpnode.data)) != 2)
break;
testdata.push_back(tmpnode);
i++;
}
cout<<"\n"<<endl;
vector<MYNODE>::iterator it;
//查找
global_index = 2;
it = find_if(testdata.begin(), testdata.end(), findcondition);
if (it != testdata.end())
{
cout<<"its data:"<<(*it).data<<endl;
}
else
{
cout<<"Not Found!"<<endl;
}
//排序
stable_sort(testdata.begin(), testdata.end(), sortcondition);
//遍历vector
for (it=testdata.begin(); it!=testdata.end(); it++)
{
cout<<(*it).index<<"--"<<(*it).data<<endl;
}
//打印vector大小
cout<<"Capacity:"<<testdata.capacity()<<" Size:"<<testdata.size()<<endl;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?