我知道所有关于指针的知识,和号的意思是“地址”,但在这种情况下它是什么意思?
另外,在重载运算符时,为什么通常用 const 声明参数?
我知道所有关于指针的知识,和号的意思是“地址”,但在这种情况下它是什么意思?
另外,在重载运算符时,为什么通常用 const 声明参数?
根据与号的上下文,它可能意味着 2 种不同的东西。您的具体问题的答案是它是一个参考,而不是“地址”。它们是非常不同的东西。了解差异非常重要。
将参数设为 const 的原因是为了确保它们不会被函数更改。这保证了函数的调用者他们传入的参数不会被改变。
这意味着该变量是一个引用。它有点像指针,但不是真的。
请参阅:参考 (C++)
在 C++ 类型声明中,与号表示“引用”。在这种情况下operator <<
,返回对ostream
对象的引用。
因为它实际上返回*this
它实际上是同一个ostream
对象,这意味着您可以将调用链接到operator <<
,类似于:
os << "Hello" << " " << "World" << endl;