天天看點

c++傳回值 注意事項

1.不要傳回指向局部變量或臨時對象的引用。函數執行完畢後,局部變量和臨時對象會消失,引用将指向不存在的資料

2.傳回指向const對象的引用 

  使用const引用的常見原因是旨在提高效率,但對于何時采用這種方式存在一些限制。

  如果函數傳回傳遞給它的對象,可以通過傳回引用來提高效率。

  A Max(const A & a1,const A &a2)

  {

    if(a1.v>a2.v)

      reutrn a1;

    else

      return a2;

  }

  const A & Max(const A &a1,const A & a2)

  { 

第一個方法傳回将調用複制構造函數A(const A &a);而第二個方法傳回引用不會,是以第二個版本所做的工作更少,

效率更高

繼續閱讀