1
爲了支持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'一樣。
我的問題是這是多麼糟糕,以及有多少使用靜態數據的問題。
是的,只有我能想到的是讓它們變成非靜態的,實際上會減少內存佔用,因爲對象只會在運行時爲序列化和反序列化而創建。 –