函数的返回和函数的传参恰恰相反,它是通过返回值来初始化外层的临时变量。
- 不要返回函数内部对象的引用或指针
const string &manip(){ string ret; if (!ret.empty()) return ret; //错误,返回局部对象的引用! else return "Empty"; //错误,Empty是一个局部临时量 }
时间: 2024-08-29 13:47:07
函数的返回和函数的传参恰恰相反,它是通过返回值来初始化外层的临时变量。
const string &manip(){ string ret; if (!ret.empty()) return ret; //错误,返回局部对象的引用! else return "Empty"; //错误,Empty是一个局部临时量 }