Вам нужен XPath, если вам нужна гибкость для внесения изменений во время выполнения в извлеченные значения.
Но, если вам вряд ли понадобится такая гибкость, или перекомпиляция для расширения того, что вы извлекаете, не является проблемой, и вещи не меняются часто или если пользователям никогда не нужно обновлять выражения. Или, если то, что у вас хорошо работает, вам не нужен XPath, и есть множество приложений, которые его не используют.
Что касается того, является ли это более читабельным, да, конечно, может быть. Но если вы просто извлекаете несколько значений, я бы поставил под сомнение необходимость использовать другую библиотеку.
Я бы, конечно, задокументировал, что у вас сейчас немного лучше, поскольку те, кто не знаком с библиотеками tinyxml или xml, могут быть не уверены в том, что они делают, но их нетрудно понять, как есть.
Я не уверен, какой тип накладных XPath добавляет, но я подозреваю, что он может добавить некоторые. Для большинства, я думаю, они вообще не заметят никакой разницы, и это может не беспокоить вас или большинство людей, но помните об этом на случай, если вас это беспокоит.
Если вы действительно хотите использовать библиотеку xpath, то все, что я могу сказать, это то, что я использовал ту, которая поставлялась с Xerces-C ++ , и это было не слишком сложно для изучения. Я использовал TinyXML раньше, и кто-то здесь упомянул TinyXPath . У меня нет опыта работы с ним, но он доступен.
Я также нашел эту ссылку полезной, когда впервые узнал о выражениях XPath.
http://www.w3schools.com/xpath/default.asp