我有一个正在准备的入门编程类(class)的记录管理程序。该代码的一部分是sortEmail
函数,该函数应该按字母顺序对 vector recordList进行排序并调用sortAlphabet
函数。我在这条线上出现错误:sort(recordList.begin(), recordList.end(), compareAlphabet);
“未在此范围内声明sort”。我怎样才能解决这个问题?
#include<iostream>
#include<vector>
#include<string>
using namespace std;
struct Record
{
string name;
string email;
};
bool compareAlphabet(const Record& a, const Record& b)
{
return a.name < b.name;
}
sortEmail(vector<Record>& recordList)
{
system("cls");
sort(recordList.begin(), recordList.end(), compareAlphabet);
cout<<"Name have been sorted alphabetically"<<endl;
for (int i=0; i!=recordList.size(); i++)
{
cout<<recordList[i].name<<endl;
cout<<recordList[i].email<<endl;
}
system("PAUSE");
system("cls");
}
最佳答案
我认为您忘记了添加<algorithm>
添加#include <algorithm>
,看看它是否有效。