今天看STL源码分析,内部一个destroy函数
template
inline void destroy(T* pointer)
{
pointer->~T();
}
当T为int的时候,如:
int *ptr = new int;
destroy(ptr);
这样就可以编译通过,而直接ptr->~int();就报错。
这是为什么啊,求指点。
今天看STL源码分析,内部一个destroy函数
template
inline void destroy(T* pointer)
{
pointer->~T();
}
当T为int的时候,如:
int *ptr = new int;
destroy(ptr);
这样就可以编译通过,而直接ptr->~int();就报错。
这是为什么啊,求指点。