Пример работы множества с классом, добавление и вывод на экран.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | /* * C++ STL set example * Anwar Mamat anwar@cse.unl.edu */ #include "set" #include "iostream" using namespace std; class Student{ public: int num; string name; }; class Comp { public: bool operator()(Student s1, Student s2) { if(s1.num < s2.num ) return true; else return false; } }; int main(int argc, char* argv[]) { set <Student, Comp> myStudent; Student a1; Student a2; a1.num = 10; a1.name = "Anwar"; a2.num = 5; a2.name = "Ziale"; myStudent.insert(a1); myStudent.insert(a2); myStudent.insert(a1); cout << "The number of students " << myStudent.size() << endl; set <Student, Comp>::iterator it; for( it = myStudent.begin(); it != myStudent.end(); it++ ) { cout << it->num << "\t" << it->name << endl; } return 0; } |
Источник: Ссылка на блог