将从方法返回的引用分配给变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将从方法返回的引用分配给变量相关的知识,希望对你有一定的参考价值。
class A{
/.../
};
class B{
public:
A& foo()
{
A *bar = new A;
return *bar;
}
};
int main()
{
A varA;
B varB;
varA = varB.foo();
return 0;
}
这条线被执行时会发生什么varA = varB.foo()
?将调用在foo中创建的对象的(在复制/移动赋值运算符函数调用之后)析构函数?
答案
不会调用析构函数,分配的对象将泄漏。
以上是关于将从方法返回的引用分配给变量的主要内容,如果未能解决你的问题,请参考以下文章
调用方法并将返回值分配给数组时,为啥C#在调用方法时使用数组引用?