#include <set><br />#include <string><br />#include <iostream><br />using namespace std;</p><p>class CEmployee {<br />public:<br /> CEmployee();<br /> ~CEmployee();<br /> const string getName() const;<br /> void setName(const string name);<br /> const string getTitle() const;<br /> void setTitle(string title);<br /> int getID() const;<br /> void setID(int id);<br />private:<br /> int m_id;<br /> string m_username;<br /> string m_title;</p><p>};<br />CEmployee::CEmployee()<br />{</p><p>}<br />CEmployee::~CEmployee()<br />{<br />}<br />const string CEmployee::getName() const<br />{<br /> return m_username;<br />}<br />void CEmployee::setName(const string username)<br />{<br /> m_username = username;<br />}</p><p>const string CEmployee::getTitle() const<br />{<br /> return m_title;<br />}</p><p>void CEmployee::setTitle(string title)<br />{<br /> m_title = title;<br />}<br />int CEmployee::getID() const<br />{<br /> return m_id;<br />}<br />void CEmployee::setID(int id)<br />{<br /> m_id = id;<br />}<br />class sortByID<br />{<br /> public:<br /> bool operator() (CEmployee const &_A, CEmployee const &_B) const<br /> {<br /> if(_A.getID() < _B.getID()) return true;<br /> if(_A.getID() == _B.getID()) return _A.getName().compare(_B.getName()) < 0;<br /> return false;<br /> }<br />}; </p><p>int main()<br />{<br /> set<CEmployee, sortByID> empIDSet; // se是僱員的set,<br /> set<CEmployee, sortByID> ::iterator iter;<br /> CEmployee employeeInfo;<br /> employeeInfo.setName("employee_one");<br /> employeeInfo.setTitle("employee");<br /> employeeInfo.setID(1);<br /> empIDSet.insert(employeeInfo);<br /> CEmployee employeeInfo2;<br /> employeeInfo2.setName("employee_two");<br /> employeeInfo2.setTitle("CFO");<br /> employeeInfo2.setID(5);<br /> empIDSet.insert(employeeInfo2);</p><p> CEmployee employeeInfo3;<br /> employeeInfo3.setName("employee_three");<br /> employeeInfo3.setTitle("manager");<br /> employeeInfo3.setID(3);<br /> empIDSet.insert(employeeInfo3);</p><p> for (iter=empIDSet.begin(); iter!=empIDSet.end(); iter++)<br /> {<br /> cout<<iter->getID()<<" " <<iter->getName()<<" " <<iter->getTitle()<<endl;<br /> }<br /> return 0;<br />}<br />