为了支持json接口,当前json请求,响应存储在一个映射中,每个类都包含静态成员变量,这些变量是从json端接收或发送到json端时访问映射的“键” 。典型的类看起来像
struct JsonCenterOfGravity
{
static const QString COMMAND_NAME = "GetCoG";
static const QString COG = "COG";
static const QString MASS = "MASS"
QVariantMap map;
};
如果响应是JsonCenterOfGravity响应,则客户端可以使用
来访问值response.map.value(JsonCenterOfGravity::COG);
会有很多这样的请求/响应类。这样实现的主要原因是不能广泛编写代码以获得更好的接口,因为项目非常重要。这将在程序中生成大量静态数据,并且实现本身也很像'C'。
我的问题是这有多糟糕以及使用数以万计的静态数据有什么问题。
答案 0 :(得分:0)
最终,我真的没有看到这样做的方法会产生内存占用较少的程序。由于它是静态的,因此只会声明一个实例,并且您需要在程序中的某个位置使用该数据才能序列化和反序列化JSON。