#include <set>
#include <string>
using namespace std;
struct StudInfo{ //declaration of structure
string name;
int id;
};
int compareID(StudInfo a , StudInfo b){ //Compare function as a parameter
if(a.id == b.id) return 0; //that is being passed to the set s
if(a.id < b.id) return -1;
else return 1;
}
int main(){
set<StudInfo> s(CompareID);
return 0;
}
裏面的主()範圍我正在此錯誤(錯誤C2065:CompareID:未聲明的標識符)儘管在視頻講座使這一代碼是相同的代碼被編譯成功 書面請幫忙。錯誤集宣言C++
大小寫事項。再次檢查拼寫和外殼。 –
您的函數以小寫'c'開頭,但是您給出'CompareID',它以大寫'C'開頭? – piwi
另外,請看'std :: set'中使用的比較要求。你的不符合他們。它必須建模一個比較少的類型。 – juanchopanza