¿Cómo uso foreach con QDomNodeList en Qt?

Soy nuevo en Qt y estoy aprendiendo algo nuevo todos los días.
Actualmente, estoy desarrollando una pequeña aplicación para mi Nokia N900 en mi tiempo libre.
Todo está bien, puedo compilar y ejecutar aplicaciones Maemo en el dispositivo.

Acabo de enterarme deforeach palabra clave en Qt. (Sé que no está en C ++, así que no lo pensé hasta que accidentalmente me topé con un documento de Qt que lo mencionaba).
Entonces, decidí cambiar mis bucles bastante molestos e ilegibles para predicar, pero fallé con esto:

QDomNodeList list = doc.lastChild().childNodes().at(1).firstChild().childNodes();
for (int x = 0; x < list.count(); x++)
{
    QDomElement node = list.at(x).toElement();
    // Do something with node
}

Así es como lo intenté:

foreach (QDomElement node, doc.lastChild().childNodes().at(1).firstChild().childNodes())
{
    // Do something with node
}

Por alguna razón, el código anterior ni siquiera se compila. Recibo mensajes de error crípticos del compilador.

¿Podría alguien explicarme cómo hacerlo bien?

Si elforeach el bucle no es compatibleQDomNodeList, ¿hay alguna manera de manejar archivos XML que admitaforeach?

EDITAR:

Para aclarar,// Do something with node es el siguiente en este caso:

EveCharacter chr;
chr.setName(node.attribute(EVE_NAME));
chr.setId(node.attribute(EVE_CHARACTER_ID).toInt());
acc->addCharacter(chr);

Donde acc es de tipoEveAccount, que almacena datos en unQList<EveCharacter>.

Los símbolos en mayúscula son cadenas constantes en tiempo de compilación.
(Estoy creando un cliente para la API en línea de EVE. Esto es del método que recibelos caracteres de la cuenta XML y lo interpreta)

Así es como creodoc:

QDomDocument doc;
doc.setContent(reply->readAll());

Tenga en cuenta quereply es unQNetworkReply* que se envía desde unQNetworkAccessManager.

Sin embargo, como la API de EVE funciona con XML, hago muchos análisis XML muy similares a esto en muchos lugares de mi aplicación.
La mayoría de los XML pueden tener varios cientos de líneas y pueden contener patrones de datos bastante no regulares,como este.

Respuestas a la pregunta(2)

Su respuesta a la pregunta