c++ - 在像 ostream& 运算符 <<(...) 这样的类名之后使用的 & 符号是什么?

标签 c++ pointers class operator-overloading addressof

我知道所有关于指针的知识,和号的意思是“地址”,但在这种情况下它是什么意思?

另外,在重载运算符时,为什么常用const声明参数?

最佳答案

在这种情况下,您将返回对 ostream 对象的引用。严格地将 & 符号视为“地址”并不总是适合您。 Here来自 C++ FAQ Lite 关于引用的一些信息。

就 const 而言,const 正确性在 C++ 类型安全中非常重要,并且您将尽可能多地去做一些事情。另一个page来自常见问题解答在这方面有所帮助。 const 帮助您避免与副作用相关的更改在您可能意想不到的情况下破坏您的数据。

关于c++ - 在像 ostream& 运算符 <<(...) 这样的类名之后使用的 & 符号是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1572016/

相关文章:

c++ - CImg: 无法识别 jpg 格式

c++ - 为什么 CodeBlocks 12.11 在 Windows 上用红色锯齿线在我的评论下划线,如何关闭此功能?

C 程序 - 指针数组乘法

c++ - 从模板调用类保护方法

c# - UWP 和 DirectX

c - 在c中如何检查字符数组是否是> = 1的有效整数?

c - *、&、...解释指针、变量和地址的关系和命名,使用以下代码块:

Java 构造函数未正确初始化

file - Kotlin 文件与类。有什么不同?

Java如何将加载的类参数类型作为泛型参数传递?