运输符重载

求助运输符重载
自定义String类,重载=,String &String::operator=(const String& other)

书上说:返回本对象的引用,目的是为了实现a=b=c这样的链式表达式,但是我不返回本对象的引用,就返回本对象,也能实现链式赋值,请问各位大侠,返回本对象的引用有何好处?

------解决方案--------------------
返回对象涉及到生成返回对象的临时复制,复制返回对象的时间成本包括调用复制构造函数来生成复制所需的时间和调用析构函数删除临时对象所需的时间,因此,返回引用可节省时间和内存