Ошибка в учебнике 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() вместо.

Другие вопросы по тегам