www.pudn.com > QQ2004_Source_0.01.rar > FriendList.h
#pragma once #includeusing namespace std; class CFriendData { public: CString userID; CString nickname; sockaddr_in addr; BOOL online; public: CFriendData() { ::ZeroMemory(&addr, sizeof(sockaddr_in)); online = FALSE; } CFriendData(const CFriendData &data) { userID = data.userID; nickname = data.nickname; online = data.online; memcpy(&addr, &data.addr, sizeof(sockaddr_in)); } void operator = (const CFriendData &data){ userID = data.userID; nickname = data.nickname; online = data.online; memcpy(&addr, &data.addr, sizeof(sockaddr_in)); } }; typedef vector FriendVector; typedef vector ::iterator FriendIterator; class CFriendList { protected: FriendVector _vector; public: CFriendList(void); virtual ~CFriendList(void); HRESULT addFriend(const CFriendData &friendData); HRESULT deleteFriend(LPCTSTR friendID); CFriendData* getFriend(LPCTSTR friendID); CFriendData* getFriend(int index); int getCount(){ return _vector.size(); } void clear(); };