如果方法或函数要返回局部变量,就应该返回引用,而不是指向对象的引用(这里如果返回引用,会因为局部变量被释放,指向一个无意义的对象而出错)。在这种情况下,将无可避免地使用复制构造函数来生成返回的对象。如果方法或函数要返回一个没有公有复制构造函数的类(如ostream)的对象,它必须返回一个指向这种对象的引用。最后有些方法和函数(如重载的赋值运算符)可以返回对象,也可以返回指向对象的引用,在这种情况下,应该首选引用,因为它的效率更高。
原文地址:https://www.cnblogs.com/syne-cllf/p/9246570.html
时间: 2024-11-07 19:35:27