比如
class A
{
~A()
{
...
}
}class B : A
{
~B()
{
...
}
}private A GetA()
{
return new B();
}void main()
{
A a=GetA();
}问一下走光main后将销毁局部变量A,这个时候执行的是A的析构还是B的?同样如果我们将A,B的位置换一下比如
private A GetA()
{
return new A();
}void main()
{
B a=GetA();
}结果又是调用那个构析?
class A
{
~A()
{
...
}
}class B : A
{
~B()
{
...
}
}private A GetA()
{
return new B();
}void main()
{
A a=GetA();
}问一下走光main后将销毁局部变量A,这个时候执行的是A的析构还是B的?同样如果我们将A,B的位置换一下比如
private A GetA()
{
return new A();
}void main()
{
B a=GetA();
}结果又是调用那个构析?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货