Visual Studio 的调试器不会显示超过 99 个 C++ 容器元素

问题描述 投票:0回答:2

我试图检查 C++ 应用程序中 std::set 容器的所有元素,但 Visual Studio 2005/2010 仅显示前 99 个元素。 如何配置 IDE 以显示所有元素?

visual-studio visual-c++ debugging
2个回答
1
投票

FWIW,在 VS2008 中您可以立即获得此功能,但它似乎在 VS2010 中消失了。我刚刚在 VS2008 和 VS2010 中都尝试过这个:

std::set< int > s;

for(int i = 0; i < 400; ++i)
{
    s.insert(i);
}

之后设置断点,然后使用 Locals 或 Watch 面板,如果我展开 s,调试器会在 VS2008 中显示其下方的所有 400 个元素,但在 VS2010 中仅显示前 100 个元素。

我不记得在 VS2008 中配置任何东西来实现这一点。

FWIW,使用 C 风格的数组和通用指针,您可以告诉调试器要显示多少个元素。 p,200 将显示从 *p 开始的 200 个元素。但这似乎不适用于 std::set 对象。 :(


0
投票

我在家里的 VC++ Express 2010 上看到了完全相同的情况。我的猜测是,要解决这个问题,您必须使用 IDE 的付费版本之一。 真烦人。

© www.soinside.com 2019 - 2024. All rights reserved.