我正在尝试通过tcp连接发送C++对象:
- 我的所有对象都是可序列化的,使用boost序列化。
- TCP服务器/客户端是使用boost asio制作的。
基本上,我想发送包含消息类型(被发送对象的类型)和数据本身(序列化对象)以及数据大小的消息,这样我就可以处理缓冲区(对于相同类型的对象,大小可能会有所变化,因为它不是POD)。
我有点困惑,因为我不知道如何发送这个。我不明白将数据转换为char缓冲区的步骤,以及在缓冲区开头添加额外信息(消息类型和大小),然后将该缓冲区提供给tcp连接的send函数,所有这些操作都需要尽量少地进行副本操作。
谢谢。