added wxSockAddress copy ctor which, in particular, fixes Clone() and fixed its operator=() return type

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2001-11-22 10:38:02 +00:00
parent a60b1f5d57
commit 1539c2f54a
2 changed files with 33 additions and 8 deletions

View File

@@ -30,14 +30,16 @@ public:
typedef enum { IPV4=1, IPV6=2, UNIX=3 } Addr;
wxSockAddress();
wxSockAddress(const wxSockAddress& other);
virtual ~wxSockAddress();
wxSockAddress& operator=(const wxSockAddress& other);
virtual void Clear();
virtual int Type() = 0;
GAddress *GetAddress() const { return m_address; }
void SetAddress(GAddress *address);
const wxSockAddress& operator =(const wxSockAddress& addr);
// we need to be able to create copies of the addresses polymorphically (i.e.
// wihtout knowing the exact address class)
@@ -51,6 +53,7 @@ class WXDLLEXPORT wxIPV4address : public wxSockAddress {
DECLARE_DYNAMIC_CLASS(wxIPV4address)
public:
wxIPV4address();
wxIPV4address(const wxIPV4address& other);
virtual ~wxIPV4address();
bool Hostname(const wxString& name);
@@ -74,7 +77,8 @@ private:
struct sockaddr_in6 *m_addr;
public:
wxIPV6address();
~wxIPV6address();
wxIPV6address(const wxIPV6address& other);
virtual ~wxIPV6address();
bool Hostname(const wxString& name);
bool Hostname(unsigned char addr[16]);
@@ -102,7 +106,8 @@ private:
struct sockaddr_un *m_addr;
public:
wxUNIXaddress();
~wxUNIXaddress();
wxUNIXaddress(const wxUNIXaddress& other);
virtual ~wxUNIXaddress();
void Filename(const wxString& name);
wxString Filename();