一个有指针和vector的类,该如何定义拷贝构造函数?
这个类中有很多类指针还有vector,该如何定义他的拷贝构造函数?还有析构函数的定义有什么要注意的吗?
class Session{public: Session(unsigned int nIndex, IoHandle* ioHandle); void Init(); inline unsigned int GetIndex() { return m_nIndex; } inline SendBuffer* GetSendBuffer() { return m_pSendBuffer; } inline RecvBuffer* GetRecvBuffer() { return m_pRecvBuffer; } inline NetObject* GetNetObject() { return m_NetObject; } void RealSendData(const std::vector<char>& buf); void BindNetObject(NetObject* pNetObject); //返回ConnectAddrInfo的类地址 ConnectAddrInfo& GetConnectAddrInfo();private: unsigned int m_nIndex; NetObject* m_NetObject; IoHandle* m_IoHandle; ConnectAddrInfo m_ConnectAddrInfo; SendBuffer* m_pSendBuffer; RecvBuffer* m_pRecvBuffer; bool m_bRemove; bool m_WaitPreRecv; bool m_DisconnectOrdered; unsigned int m_LastRecvBufLen; unsigned int m_LastSyncTime; std::list< std::vector<char> > m_WaitSendList;private: /// Handle completion of a read operation. void handle_read(const boost::system::error_code& e, std::size_t bytes_transferred); /// Handle completion of a write operation. void handle_write(const boost::system::error_code& e, std::size_t bytes_transferred);};