有没有什么简单的方法可以std::list<T>
在 Metrowerks CodeWarrior 调试器中查看 STL 中的数据?我可以通过查看表达式来查看列表开头或结尾附近的数据,例如
instances->__list_imp.__list_deleter.end_.compressed_pair_imp.second_.prev_->data_
我可以展开结构成员旁边的小“+”号来一次遍历列表一个元素,但这很乏味,并且在大约 20-30 个元素之后,树对于调试器窗口来说太宽了。我正在检查的列表有 2000 多个元素。
CodeWarrior 调试器不支持在表达式中调用函数,所以我无法检查(++(++instances.begin()))
或类似的值。我只能查看结构成员,它们的名称非常长且不方便。
调试器窗口也被限制为大约 245 个字符,因此我无法编写脚本来生成一个可笑的长表达式,该表达式将扩展到第 N 个节点。
我正在尝试调试一个需要数小时浸泡才能重现的问题,因此任何需要增量添加代码、重新编译和重新调试的问题都不会很有帮助。但是,如果没有其他选择,那么我可能不得不这样做。