gpt4 book ai didi

c++ - 通过套接字发送结构;服务器和客户端在同一台机器上

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:36:22 24 4
gpt4 key购买 nike

我的服务器和客户端在同一台机器上运行,所以我没有字节序问题等。我需要一些可以在 vc++ 和 g++ 上工作的东西,并且可能是最简单的方法。我可以用什么发送结构?

编辑

struct Info
{
int** fields;
char** field_names;
};

最佳答案

Boost.Serialization ,这是我在 another question 中发布的一个相当简单的示例

#include <boost/archive/text_oarchive.hpp>
#include <boost/serialization/string.hpp>

#include <string>

struct Message
{
std::string _a;
std::string _b;

template <class Archive>
void serialize(
Archive& ar,
unsigned int version
)
{
ar & _a;
ar & _b;
}
};

int
main()
{
Message msg;
msg._a = "hello";
msg._b = "world";
std::ostringstream os;
boost::archive::text_oarchive ar( os );
ar & msg;
}

请注意,序列化库的功能远不止于此。它可以序列化其他 Boost 库中的指针、引用、容器和许多对象。我这里的例子展示了侵入式序列化,如果你不能修改你的结构,有办法序列化 non-intrusively

关于c++ - 通过套接字发送结构;服务器和客户端在同一台机器上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3608786/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com