我正在使用一些带有一些笨拙类型的库。在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]
部分的开头,它可以正常工作。
但是假设我想显示一个更复杂的类型,它没有任何有用的成员变量,但它有非常有用的方法。 E.g:
class Date {
//...
String asString() const;
private:
long _someReallyStrangeAndUnusefulDateRepresentation;
}
我想显示字符串而不是无用的长字符串。怎么做?写
Date{
preview (
[$c.asString()]
)
}
在autoexp.dat中不起作用。
答案 0 :(得分:3)
好的,经过一些研究似乎通常可以,但不能直接编辑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受启动调试可视化工具的启发。
但是我还没有尝试过这些。