首先,new的话就是为对象在内存的堆中开辟一块内存空间
比如说 int *p = new int(10);就是说从内存中分配一个足够大的内存来存放int变量。
delete p 释放内存
关于内存泄露方面的问题
1、 在使用new和delete的时候要配对
2、 使用malloc后要free
3、 可以定义一个全局的list,进行内存分配的时候插入,释放时删除
4、 使用智能指针auto_ptr
原来定义指针为 int *p=new int(10); .................delete p;
而是用auto_ptr智能指针的话只需要 auto_ptr p(new int(10));不需要进行手动释放内存
5、还有就是关于Boost,它针对auto_ptr很多不足方面进行补充。本人暂时还没学习这方面的知识。