CElement *CElement::findDescendant(CPathNavigator &pathNavigator) { string *pStrChildName = pathNavigator.next(); if (!pStrChildName) { return this; } CElement *pChild = findChild(*pStrChildName); if (!pChild) { return NULL; } return pChild->findDescendant(pathNavigator); }