您的位置:首页 > 编程语言 > C语言/C++

c++返回值 注意事项

2014-01-01 12:18 267 查看
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)

  { 

    if(a1.v>a2.v)

      reutrn a1;

    else

      return a2;

  }

第一个方法返回将调用复制构造函数A(const A &a);而第二个方法返回引用不会,因此第二个版本所做的工作更少,

效率更高
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: