// Smersh // // Douglas Thrift // // $Id$ #ifndef _Person_hpp_ #define _Person_hpp_ #include #include "Matcher.hpp" class Person { private: string name; vector multiple; public: Person(const string& sn = ""); Person(const Person& person) : name(person.name) {} ~Person() {} bool isMultiple() const { return !multiple.empty(); } vector::const_iterator beginMultiple() const { return multiple.begin(); } vector::const_iterator endMultiple() const { return multiple.end(); } void clearMultiple() { multiple.clear(); } Person& operator=(const Person& person) { name = person.name; } bool operator==(const Person& person) const { return name == person.name; } bool operator<(const Person& person) const { return name < person.name; } // friends: friend ostream& operator<<(ostream& sout, const Person& person) { return sout << person.name; } }; #endif // _Person_hpp_