c++Vector的使用

vector<Student> vec;  //声明vector容器,里边存的是Student类
    for(int i = 0; i < 5;i++)
    {
        vec.push_back(stu[i]);   //将Student数组添加到vector中
        }
    cout << "原始数据"  << endl;
  //利用循环输出
for(int i = 0 ; i < vec.size();i++) { cout << "学生ID:" << vec[i].getId() << "姓名:" << vec[i].getName() << "年龄:" << vec[i].getAge() << endl; } cout << "顺序排列后的结果" << endl; sort(vec.begin(),vec.end(),myCompare1); //调用自定义的比较函数,根据学生学号就行排序
      //利用迭代器的方式进行遍历
for(vector<Student>::iterator it = vec.begin(); it!=vec.end(); it++) cout << "学生ID:" << (*it).getId() << "姓名:" <<(*it).getName() << "年龄:" << (*it).getAge() << endl; cout << "逆序排序的结果" << endl; sort(vec.begin(),vec.end(),myCompare2);//调用自定义的比较函数,根据学生学号就行排序
for(vector<Student>::iterator it = vec.begin(); it!=vec.end(); it++) cout << "学生ID:" << (*it).getId() << "姓名:" <<(*it).getName() << "年龄:" << (*it).getAge() << endl;

//自定义的比较函数,这里是对学号进行排序
static bool myCompare1(const Student& a1,const Student& a2)
{
return a1.id <= a2.id;   //按照递增的方式进行排列
}
static bool myCompare2(const Student& a1,const Student& a2)
{
return a1.id >= a2.id;  //利用递减的方式进行排列
}



猜你喜欢

转载自www.cnblogs.com/1gaoyu/p/11939285.html