2

我刚刚开始学习如何在 C++/Qt 中编码,似乎无法弄清楚如何在我的代码中调试某些对象。

举个例子:

QDir searchDirectory(dirPath);

QFileInfoList files = searchDirectory.entryInfoList();

foreach(QFileInfo file, files)
{
    if(file.isDir())
    {
    }
    else if(file.isFile())
    {
        ui->lstResults->addItem(file.absoluteFilePath());
    }
}

如果我在“if(file.isDir())”部分放置断点,我似乎无法从文件包含的内容中检索到太多信息——我得到的只是QSharedDataPointer类型的d_ptr

有没有办法查看这个对象的实际成员和属性?

我截取了一个截图,希望我能被更好地理解:

调试

4

1 回答 1

3

http://doc.qt.io/qt-4.8/debug.html

http://wiki.qt.io/Dpointer

尝试

#include <QDebug>

// ...

qDebug() << "Debug QFileInfo" << file.isDir() << file.absoluteFilePath();

希望有帮助。

于 2013-08-26T20:12:04.803 回答