2012-03-28 100 views
4

我有以下的JSON結構。JSON到C++結構

{ 
"name": "abc", 
"city": "holland", 

"links": [ 
    { 
     "href": "/city/holland/1", 
     "method": "GET", 
     "rel": "edit", 
     "type": "application/holland.citydata+json" 
    }, 
    links": [ 
    { 
     "href": "/city/holland/2", 
     "method": "GET", 
     "rel": "self", 
     "type": "application/holland.citydata+json" 
    }, 

], 

我已經使用一些解析器解析了這個json響應。現在我想將它轉換爲C++結構對象。

typedef struct json_object; 
struct json_object { 

char name; 
char city; }; 

我具有由通過JasonParser響應循環我object.How可以在結構acheive該讀取中的每個鏈路的每個href的值。

我應該使用鏈接列表嗎?我怎麼能在結構中做到這一點?

有人請舉例。

回答

2

這就是我該怎麼做的。

struct Link { 
    std::string href; 
    std::string method; 
    std::string rel; 
    std::string type; 
}; 

struct JSONObject { 
    std::string name; 
    std::string city; 
    std::vector<Link> links; 
}; 

根據您的使用方式,您可以細化一下。

enum Method { 
    GET 
    ,POST 
}; 

這可能是合理的,但我認爲字符串是足夠的表現力,直到他們讓你的方式。

+0

非常感謝。這正是我正在尋找的。 – user1029083 2012-03-28 01:30:21