对stl中的destroy函数做如下测试:
template<typename T> void MyDestroy(T* pointer) { pointer->~T(); cout<<"OK"<<endl; } int main() { //int *p=new int(); //这里是怎么实现的?? //cout<<*p<<endl; //输出为0 int *p=NULL; //必须给p复初值,否则运行时会出错 //若写成int *p;运行时出错 MyDestroy(p); }
上述中的int *p=new int(); 和pointer->~T();在C++中是怎样实现的??求路过大神解释!!!