释放指向堆内派生类对象的基类指针,对象中原来在派生类中定义的变量的内存空间释放了吗?解决方案

释放指向堆内派生类对象的基类指针,对象中原来在派生类中定义的变量的内存空间释放了吗?
class A
{
int a;
};

class B : public A
{
int b;
};

void main()
{
A *p = new B;
delete p;
}

如此,对象中变量b所占的内存空间释放了吗?
------解决方案--------------------
忘记标准怎么说了,只是记得“条款”建议A的destructor需要是virtual的。