我有一些C ++数据类型,我想改善团队的调试体验。因此,我想在autoexp.dat文件中创建自定义可视化工具。 [AutoExpand]部分似乎不够,所以我开始查看[Visualizer]。我发现this website有一些解释,但有没有全面的参考/手册/教程?例如,我没有得到$ c和$ e之间的区别。我已经成功地展示了一些基本信息,但我觉得还有更多要知道......
你知道什么好资源吗?
谢谢!
答案 0 :(得分:6)
看来这已在上面发表过评论,但有人提出此问题并不一定会阅读评论,因此可能会错过推广网站上提供的精彩教程:
https://svn.boost.org/trac/boost/wiki/DebuggerVisualizers
另外
http://mariusbancila.ro/blog/2007/04/06/tweaking-autoexpdat-for-custom-types-in-vs2005/
http://www.idigitalhouse.com/Blog/?p=83
http://www.chromium.org/developers/how-tos/how-to-set-up-visual-studio-debugger-visualizers
答案 1 :(得分:0)
下面是boost :: tuple的可视化器示例。它应该很容易理解:
boost::tuples::tuple<*>{
; Show as (11, 22, 33, ... })
preview (
#(
"("
, $e.head
, ", "
, $e.tail.head
, ", "
, $e.tail.tail.head
, ", "
, $e.tail.tail.tail.head
, ", "
, $e.tail.tail.tail.tail.head
, ", "
, $e.tail.tail.tail.tail.tail.head
, ", "
, $e.tail.tail.tail.tail.tail.tail.head
, ", "
, $e.tail.tail.tail.tail.tail.tail.tail.head
, ", "
, $e.tail.tail.tail.tail.tail.tail.tail.tail.head
, ", "
, $e.tail.tail.tail.tail.tail.tail.tail.tail.tail.head
, ")"
)
)
children (
#(
0: $e.head
, 1: $e.tail.head
, 2: $e.tail.tail.head
, 3: $e.tail.tail.tail.head
, 4: $e.tail.tail.tail.tail.head
, 5: $e.tail.tail.tail.tail.tail.head
, 6: $e.tail.tail.tail.tail.tail.tail.head
, 7: $e.tail.tail.tail.tail.tail.tail.tail.head
, 8: $e.tail.tail.tail.tail.tail.tail.tail.tail.head
, 9: $e.tail.tail.tail.tail.tail.tail.tail.tail.tail.head
)
)
}