VS调试查看Qt内置类型

    利用VS调试Qt程序,通常情况下无法查看QString等Qt内置类型的值,只能够利用QDebug进行输出显示,但是这样引起的问题就是每次调试的时候都需要重新编译,当然这是不包括自己编写库的情况,下面来介绍另外一种方式可以让利用VS在调试Qt程序的时候直接像查看C++内置类型(例如int)一样进行查看值。

    1.打开VS的安装目录,找到Common7\Packages\Debugger下面的autoexp.dat文件,打开->搜索[Visualizer],在下面添加

    ;Qt4
    QString{
        preview    ([$e.d->data,su])
        stringview ([$e.d->data,sub])
        children
        (
        #(
            d: $c.d,
            [size]: $c.d->size,
            [referenced]: $c.d->ref._q_value
        )
        )
    }
    ;Qt5
    QString|*::QString{
        preview    ([(unsigned short*)$e.d + $e.d->offset/2,su])
        stringview ([(unsigned short*)$e.d + $e.d->offset/2,sub])
        children
        (
        #(
            d: $c.d,
            [size]: $c.d->size,
            [referenced]: $c.d->ref.atomic._q_value
        )
        )
    }
    上面只增加了QString,其它类型添加方式基本一致。

    2.上面修改完还没有生效,这是只需要重启VS,选择 工具->选项->调试->编辑并继续,选中其中的 启用本机“编辑并继续”,点击确定,即可生效。

 

你可能感兴趣的:(QT,C++)