Ошибка в учебнике TinyXml++
пытаясь скомпилировать учебник TinyXml++ с CodeBlocks (16.01) и VS2013, я получаю ту же ошибку в следующей строке:
ticpp::Element* pElem = doc.FirstChildElement()->NextSibling();
Ошибка CodeBlocks:
неверное преобразование из 'ticpp::Node*' в 'ticpp::Element*' [-fpermissive]
Ошибка VS2013:
невозможно преобразовать из 'ticpp::Node*' в 'ticpp:: Element *'
Любая идея?
1 ответ
Если вы все еще хотите его скомпилировать, независимо от того, есть ли ошибка в руководстве, вы можете использовать ключевое слово auto для объявления переменных.
Например:
auto pElem = doc.FirstChildElement()->NextSibling();
Таким образом, компилятор будет определять тип переменной во время компиляции.
Тип возврата NextSibling()
является Node*
. Если хочешьElement*
в качестве типа возврата вы можете использовать NextSiblingElement()
вместо.