在 Visual Studio watch window 中可浏览的 c++ 自定义数组
c++ custom array browsable in Visual Studio watch window
我想在 C++ 中创建一个类似于 class 的数组。除其他原因外,因为我想要一个带有自定义 malloc 的数组。这可能看起来很简单,但我想像普通数组一样使用它,意思是:
- initialization like arr foo[10]; or arr bla[] = {2, 3};
- more important, I want to be able to see its members in Visual Studio watch window.
我的意思是在 Visual Studio watch window 中,您只需单击数组的左侧,它的内容就会展开并显示所有成员。对于手表部分,我对两种解决方案都感兴趣:设计巧妙的 class 和 Visual Studio.
的附加组件
您可以为此目的使用 .natvis
个文件。您可以通过模式匹配或自定义调试可视化应用程序定义可视化:
https://code.msdn.microsoft.com/windowsdesktop/Writing-type-visualizers-2eae77a2
https://code.msdn.microsoft.com/Writing-graphical-debugger-a17e3d75
但是,如果您想要 "array with custom malloc",可以利用 std::vector
中的 allocator 支持。
我想在 C++ 中创建一个类似于 class 的数组。除其他原因外,因为我想要一个带有自定义 malloc 的数组。这可能看起来很简单,但我想像普通数组一样使用它,意思是:
- initialization like arr foo[10]; or arr bla[] = {2, 3};
- more important, I want to be able to see its members in Visual Studio watch window.
我的意思是在 Visual Studio watch window 中,您只需单击数组的左侧,它的内容就会展开并显示所有成员。对于手表部分,我对两种解决方案都感兴趣:设计巧妙的 class 和 Visual Studio.
的附加组件您可以为此目的使用 .natvis
个文件。您可以通过模式匹配或自定义调试可视化应用程序定义可视化:
https://code.msdn.microsoft.com/windowsdesktop/Writing-type-visualizers-2eae77a2 https://code.msdn.microsoft.com/Writing-graphical-debugger-a17e3d75
但是,如果您想要 "array with custom malloc",可以利用 std::vector
中的 allocator 支持。