可能重复:
C++ 返回对局部变量的引用
我无法在以下代码中正确传递引用。
myint& myint::abs()
{
myint i=*this;
myint &t=i;
t.setsign(0);
return t;
}
引用 't' 在 abs() 函数中被正确修改。我打印了它,发现它是正确的。但是 main() 中收到的值总是错误的。
我在 main() 中使用了以下语句
myint a("-12"); /*gives a=-12 with each digit in a linked list node. separate data field for sign.*/
myint b=a.abs();
b 收到的是 0,默认值。
提前致谢。