c++ - 在 Visual Studio 中调试时,我可以将一些 C/C++ 结构内容保存到磁盘吗?

标签 c++ visual-studio debugging

我有一些大而旧的 C++ 程序和一些类,其中包含我想要调试的方法。这些方法将一些结构作为输入并返回一些结构作为输出。在调试期间,我想以一些简单的格式(如 JSON 或 XML)将输入和输出结构保存到磁盘:当我编写旧代码的包装以在我的程序中重用它时,它可以帮助我。

在 VS Debug模式下,我可以很容易地用眼睛看到任何结构的内容,但默认情况下我无法将其正确保存到磁盘。

有什么方法可以在 Microsoft Visual Studio 的 Debug模式下将结构保存到磁盘?

最佳答案

不,VS中没有这样的功能。你能做到这一点的唯一方法是手动创建一个文件并将你的对象转储到它(使用 output stream operator 很容易做到这一点,但如果你想要一个 JSON 格式,你需要一个 json 库来做到这一点(例如 jsoncpp)。

您可以通过 #ifdef _DEBUG 保护此类代码,以确保它不会影响发布构建:

#ifdef _DEBUG
std::fstream debugFile( "C:/mydebug.txt", std::ios_base::out );
debugFile << object;
#endif

关于c++ - 在 Visual Studio 中调试时,我可以将一些 C/C++ 结构内容保存到磁盘吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52017667/

相关文章:

c++ - UDP/TCP 服务器中监听器线程与工作线程的比率?

visual-studio - 为什么从 Visual Studio 2008 中删除了在新 ATL 项目中使用属性的选项?

visual-studio - 在 SSIS 执行期间,如何查看错误?

visual-studio - 每当我删除文件时,VisualStudio 2010 都会卡住

c - 使用链表反向打印字符串

c# - VS2008 中有没有办法在 watch 或快速 watch 中搜索特定值?

c++ - C++ 标准库必须支持对 friend 是谁挑剔的类吗?

c++ - 如何编写仅在 DEBUG 为#defined 时才编译的 'if' 条件?

c++ - 使用 cout 和函数调用结构参数的结构输出

windows - 调试 WFP 标注驱动程序有哪些选项