考虑到 std::cout 是一个初始化对象,为什么 Visual Studio 在调试器中设置 Watch 时“无法识别其标识符”?

斯威夫特

考虑到这std::cout是一个已初始化的对象,为什么在调试器中设置 Watch 时,visual studio无法“识别其标识符”

如何在内存中查看这个对象?

std::cout都设置cout为监视变量返回:

[标识符“std::cout”未定义]

[标识符“cout”未定义]

分别。

#include <iostream>

int main()
{
    std::cout << "Usage of std::cout\n";

    // breakpoint
    return 0;
}

根据https://en.cppreference.com/w/cpp/io/cout关于 cout 的话题:

这些对象保证在第一次std::ios_base::Init构造类型的对象期间或之前进行初始化,并且可用于具有有序初始化的静态对象的构造函数和析构函数(只要<iostream>在定义对象之前包括在内)。

艾伦·伯特尔斯

您可以创建一个本地引用std::cout并为此添加一个监视。例如:

auto& mycout = std::cout;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章