DAG는 JSON 형식으로되어 있습니다. 각 노드는 항목이고 두 개의 배열이 있습니다. 하나의 배열은 화살표가 들어있는 다른 노드를위한 배열이고,이 노드가 향하는 노드의 배열 (나가는 화살표)입니다.C++에서 포인터 속성으로 struct 속성을 변환하는 방법은 무엇입니까?
따라서, 예를 들어 :
{
'id': 'A',
'connected_from' : ['B','C'],
'connects_to' : ['D','E']
}
그리고 그 모두 함께 DAG를 형성,이 노드의 컬렉션을 가지고있다.
나는 ID가 단순히 문자열이 노드를 개최 구조체에 노드를지도하고 싶습니다, 나는이 구조체의 포인터의 벡터로 배열을 싶습니다
struct node {
string id;
vector<node*> connected_from;
vector<node*> connected_to;
}
JSON 배열의 'id'노드 항목을 해당 노드를 보유하는 올바른 구조체에 대한 포인터로 변환하려면 어떻게해야합니까?
하나의 확실한 접근법은 키 - 값 쌍의 맵을 작성하는 것입니다. 여기서 key = id, value = 해당 ID를 가진 구조체에 대한 포인터이며 조회는 수행하지만 더 좋은 방법이 있습니까?