POCO庫中文程式設計參考指南(7)Poco::Net::DatagramSocket

鍾超發表於2012-04-15

POCO庫中文程式設計參考指南(7)Poco::Net::DatagramSocket

  • 作者:柳大·Poechant
  • 部落格:Blog.CSDN.net/Poechant
  • 郵箱:zhongchao.ustc#gmail.com (# -> @)
  • 日期:April 15th, 2012

1 建構函式

建立一個未連線的 IPv4 資料包 Socket:

DatagramSocket();

建立一個指定 IP 型別(IPv4 或 IPv6)的資料包 Socket:

explicit DatagramSocket(IPAddress::Family family);

建立一個指定 SocketAddress 的資料包 Socket

DatagramSocket(const SocketAddress& address, bool reuseAddress = false);

DatagramSocket(const Socket& socket);
    /// Creates the DatagramSocket with the SocketImpl
    /// from another socket. The SocketImpl must be
    /// a DatagramSocketImpl, otherwise an InvalidArgumentException
    /// will be thrown.

2 過載運算子

DatagramSocket& operator = (const Socket& socket);
    /// Assignment operator.
    ///
    /// Releases the socket's SocketImpl and
    /// attaches the SocketImpl from the other socket and
    /// increments the reference count of the SocketImpl.   

3 常用操作

3.1 連線與繫結

void connect(const SocketAddress& address);
void bind(const SocketAddress& address, bool reuseAddress = false);

3.2 收發資料且不考慮 client

int sendBytes(const void* buffer, int length, int flags = 0);
int receiveBytes(void* buffer, int length, int flags = 0);

3.3 手法資料且獲取 client 的 SocketAddress

int sendTo(const void* buffer, int length, const SocketAddress& address, int flags = 0);
int receiveFrom(void* buffer, int length, SocketAddress& address, int flags = 0);

3.4 收發廣播

void setBroadcast(bool flag);
bool getBroadcast() const;

4 protected 函式

DatagramSocket(SocketImpl* pImpl);

-

轉載請著名來自柳大的CSDN部落格:Blog.CSDN.net/Poechant

-

相關文章