TinyXpath v_get_xpath_base, второй параметр - PullRequest
0 голосов
/ 21 октября 2010

Что я передаю здесь как второй параметр v_get_xpath_base , чтобы заставить его работать, независимо от того, что я пытаюсь, всегда есть проблема. Либо класс является базовым классом, который не может быть создан, либо класс не может быть приведен.

Я в растерянности, кто-нибудь, помогите мне, пожалуйста?

        TiXmlElement* outputnode = new TiXmlElement("test");
  bool isAttrib;
  proc.v_get_xpath_base(1, outputnode, isAttrib);

В его нынешнем виде TiXmlElement нельзя привести к const TiXmlBase*&

.

Ответы [ 2 ]

1 голос
/ 21 октября 2010

API вернет вам соответствующий узел - я думаю, вам нужно что-то вроде:

const TiXmlBase* outputnode(0);
bool isAttrib;
proc.v_get_xpath_base(1, outputnode, isAttrib);

и после вызова outputNode будет указывать на сопоставленные данные. Похоже, вы должны использовать const TiXmlBase* в качестве типа для outputnode. Вот пример здесь , который делает это.

Обратите внимание, что это работает только после того, как вы это сделали, согласно документам TinyXml:

Может использоваться только после звонка u_compute_xpath_node_set.

0 голосов
/ 22 октября 2010

У меня такая же проблема.Решение Стив отлично работает, но я не вижу, как использовать outputnode после.Он не может быть приведен от TiXmlBase до TiXmlElement и не может использоваться напрямую с методом из этого дочернего класса.Я просматриваю документацию, не находя способа манипулировать этим TiXmlBase указателем.

...