A* x = (A*)new B;
delete x;
A* x = (A*)new B[N];
delete[]x;
A,B都是typename,相互独立不继承,且所占用字节数不同
这两种形式是否能正确释放内存,会不会泄露?(我用任务管理器简单测了几下,内存并没有涨)
如果能,是不是 delete 和 delete[] 都只关心指针的值,不关心其类型?(如malloc 和 free 也都是通过 void* *进行操作的)
A* x = (A*)new B;
delete x;
A* x = (A*)new B[N];
delete[]x;
A,B都是typename,相互独立不继承,且所占用字节数不同
这两种形式是否能正确释放内存,会不会泄露?(我用任务管理器简单测了几下,内存并没有涨)
如果能,是不是 delete 和 delete[] 都只关心指针的值,不关心其类型?(如malloc 和 free 也都是通过 void* *进行操作的)