Могу ли я настроить autoexp.dat для включения визуализации QT QDomNode в отладчике Visual Studio 2010

Мы занимаемся разработкой QT в Visual Studio 2010. Я хотел бы видеть содержимое переменной QDomNode в отладчике Visual Studio.

Можно настроить отображение переменных в отладчике Visual Studio, настроив файл autoexp.dat. Надстройка QT для Visual Studio добавляет множество настроек в autoexp.dat, которые позволяют вам просматривать релевантную информацию для классов QT, и существует ряд обсуждений по настройке autoexep.dat, которые включают в себя настройку для QDomNode, которая, как представляется, происходит из этого Запись в блоге Дэниела Альбушата Отладка QT с помощью Visual Studio 2005. Тем не менее, QDomNode все еще не виден мне даже с описанными изменениями в autoexp.dat.

Я заметил, что QDomNode использует переменную-член QDomNodePrivate* impl в качестве PIMPL, чтобы скрыть свои элементы данных позади. Это похоже на указатель "d", обычно используемый в QT, особенно в QString, который способен правильно видеть данные... Любые указатели приветствуются...

1 ответ

Простой предварительный просмотр будет:

QDomNode|*::QDomNode{
    preview         ($e.impl->name)
}

Но это на самом деле не работает, потому что отладчик может видеть структуру impl только тогда, когда он находится "внутри" qdom.cpp, который содержит определение QDomNodePrivate. Вы можете проверить это, войдя в некоторый метод QDom. Одним из "хакерских" решений было бы скопировать определение класса QDomNodePrivate в некоторый заголовочный файл, который вы включили в свою программу.

И не забывайте: вы должны быть администратором, чтобы успешно редактировать autoexp.dat!

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