Próbuję napisać analizator składni XML, analizując plik XML na boost::property_tree
i natknąłem się na ten problem. Jak mogę (szybko) sprawdzić, czy dziecko określonej nieruchomości istnieje?Zwiększ wartość właściwości PropertyTree: sprawdź, czy dziecko istnieje.
Oczywiście mogłem powtórzyć nad wszystkimi dziećmi przy użyciu BOOST_FOREACH
- jednak nie ma lepszego rozwiązania tego?
aby uzyskać przykład do pracy musiałem wyjąć „const” - mógłbyś wyjaśnić, dlaczego używasz „const "tutaj? – serup
Dla bezpieczeństwa. Podczas odczytu konfiguracji może istnieć niewielki powód do modyfikacji wartości. Szybkie wyszukiwanie pokazuje, że ptree wciąż ma (w wersji 1.61.0) przeciążenie get_child_optional, które zwraca opcjonalne, więc Twój błąd będzie związany z tym, co zrobisz z wartością później. –
RobH