c++ - "cout << cout"- 输出代表什么?

标签 c++ std

经过一整天的编码,我不小心写了

cout << "some text" << cout;

代替

cout << "some text" << endl;

现在它打印出一个内存地址。它指向什么?

最佳答案

std::coutstd::ostream 的一个实例,在 C++11 之前,它有一个 conversion operator to void*。 .您的代码似乎正在触发该转换,为您提供了 std::cout 对象的地址。

关于c++ - "cout << cout"- 输出代表什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28872624/

相关文章:

c++ - Qt 用户自定义热键

c++ - 有没有办法监视 C++/MacOS 中的堆使用情况?

c++ - Clang线程安全分析和线程角色

c++ - MSVC++ 中源字符集编码规范,如 gcc "-finput-charset=CharSet"

c++ - gcc 4.9.2 -Wmissing-field-initializers 中的错误?

c++ - g++ 坚持寻找 stdio.h getline 而不是 std::getline (string)

c++ - 使用 std::bitset

c++ - std::stream 写/读 vs 运算符 <</operator >>

c++ - 初始化 vector 和 std

c++ - 无法将数据插入 std::set。作为重复丢弃