下面程序的运行结果是________。
#include
<iostream.h>
class A
{
public:
A(){cout<<"A::A() called.\n";}
virtual
~A(){cout<<"A::~A() called.\n";}
};
class B:public A
{
public:
B(int i){
cout<<"B::B()
called.\n";
buf=new char[i];}
virtual ~B()
{
delete []buf;
cout<<"B::~B() called.\n";
}
private:
char *buf;
};
void fun(A *a)
{
delete
a;
}
void main()
{
A *a=new
B(15);
fun(a);
}
A::A() called.
B::B() called.
B::~B() called.
A::~A() called.