任何人都可以解释为什么在重载运算符时需要返回引用,例如
friend std::ostream& operator<< (std::ostream& out, const std::string& str)
Run Code Online (Sandbox Code Playgroud)
在这样的例子中,它是对操作员的"链接"工作:
std::cout << "hello," << " world";
Run Code Online (Sandbox Code Playgroud)
如果第一个(最左边)使用了operator<<()没有返回引用,则不会有一个对象要求第二次使用该运算符.