class Way {
private:
std::vector<Node> nodesCollection;
public:
Way();
Way(const Way& orig);
virtual ~Way();
void SetNodesCollection(std::vector<Node> nodesCollection);
std::vector<Node> GetNodesCollection() const;
};
나는 벡터를 속성으로 추가했으며 다음 클래스와 항목에서 벡터에 액세스합니다.항목은 벡터에 추가되지 않습니다.
Way wayNode;
for (; WayIter!=wayNodes.end(); ++WayIter)
{
const JSONNode& arrayNode = *WayIter;
if (arrayNode.find("ref") != arrayNode.end())
{
std::string id = arrayNode.find("ref")->as_string();
if(nodesMap.find(id) != nodesMap.end())
{
wayNode.GetNodesCollection().push_back(nodesMap.find(id)->second);
}
}
}
하지만 항목은 "nodesCollection"에 추가되지 않습니다. 그 수는 0입니다. 그 오브젝트 추가는 null이 아닙니다.
이 문제를 해결하려면 도움이 필요합니다. 나는 C++을 처음 사용합니다.
미리 감사드립니다.
wayNodes을 것입니다 (당신은 GetNodesCollection가 정의 된 동일한 변경을해야 할 것)? 그것은 신비스럽게 코드 스 니펫에 등장했습니다 ... – 4pie0
자사의 JSONNode는 "nodesMap.find (id) -> second"가 null이 아닙니다. – JanithOCoder
노드 또는 노드의 일부 컨테이너? 당신이 보여주는 것과 말하는 것에 더주의를 기울이십시오. 참고 : wayNodes. 에스. – 4pie0