——返回引用而不是返回對象,這將避免使用復制構造函數,從而提高效率
返回對象的引用:
- 引用指向的對象應該在調用函數執行時存在,或位於堆(new)中
返回const引用:
- 若形參是const引用,且返回傳入的對象的引用,那么只能返回對象的const引用
返回非const的引用:
- 兩種常見情形:重載賦值運算符、重載與ostream對象一起使用的<<
- 重載賦值運算符:提高效率,並提供了直接操作目標對象的機會
- 重載<<:ostream對象沒有公有的復制構造函數,因此只能返回對象的引用ostream &
