delete void*指针 编译器会死,该怎么解决

delete void*指针 编译器会死delete void*指针 编译器会死,有一个疑问:编译器不是在在指针分配内存的前一

delete void*指针 编译器会死
delete void*指针 编译器会死,
有一个疑问:编译器不是在在指针分配内存的前一个字节或者其他地方保存所申请的空间大小,释放的时候就去取这个大小来释放么? 那么其实指针的类型只是给我们自己看的,电脑释放的时候会去取保存的空间大小来释放.
那为什么 delete void*指针会导致编译器崩溃;

[解决办法]
指针指向结构,释放结构大小,指向整数,释放整数大小,指向数组,释放数组大小,指向void?
编译器好像也不知道void类型的大小的
[解决办法]
delete 和 new 操作的都是void类型的指针,没有问题的。
[解决办法]

探讨

In the second alternative (delete array) if the dynamic type of the
object to be deleted differs from its static type, the behavior is undefined.

This implies that an object cannot be deleted usi……

[解决办法]
不会啊!重载delete就是释放的void*啊?void operator delete(void* m) {free(m)}