簡體   English   中英

調試Visual Studio的C ++自定義類型的可視化工具

[英]debug visualizer of C++ custom types for Visual Studio

我正在使用一些帶有一些笨拙類型的庫。 在Visual Studio中進行調試時,我希望以可讀的形式顯示它們。 我找到了一些關於如何編輯autoexp.dat文件的非常有用的文章。

http://www.idigitalhouse.com/Blog/?p=83

要么

http://mariusbancila.ro/blog/2007/04/06/tweaking-autoexpdat-for-custom-types-in-vs2005/

假設我有一個String類:

class String {
//...
private:
    char *_cbuf;
}

然后我可以輕松添加可視化工具,因為_cbuf是一個成員變量。 我只是寫

String{
preview (
[$c._cbuf]
)
}

在autoexp.dat文件的[Visualizer]部分的開頭,它可以工作。

但是假設我想顯示一個更復雜的類型,它沒有任何有用的成員變量,但它有非常有用的方法。 例如:

class Date {
    //...
    String asString() const;
private:
    long _someReallyStrangeAndUnusefulDateRepresentation;
}

我想顯示字符串而不是無用的長字符串。 怎么做? 寫作

Date{
preview (
[$c.asString()]
)
}

在autoexp.dat中不起作用。

好的,經過一些研究似乎通常可以,但不是直接編輯autoexp.dat。

第一種解決方案是使用EEAddIn.dll,如下所述: http//msdn.microsoft.com/en-us/library/8fwk67y3%28v=VS.90%29.aspx

另一個解決方案可能是使用內聯函數,如Lucien Murray-Pitts在此頁面上的評論: http//www.virtualdub.org/blog/pivot/entry.php?id = 120,其靈感來自boost調試可視化工具。

但是我還沒有嘗試過這些。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM