C++入门经典-例5.15-回收动态内存的一般处理步骤

时间:2017-09-15 15:22:32   收藏:0   阅读:322

1:正确的步骤应该是如下代码所示:

技术分享
// 5.15.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <iostream>
void swap(int* a,int* b)
{
    int temp = *a;
    *a = *b;
    *b = temp;
}

int main()
{
    int* pI =new int;
    *pI = 3;
    int k =5;
    swap(pI,&k);
    std::cout<<"*pI:"<<*pI<<std::endl;//使用std名字空间
    std::cout<<"k:"<<k<<std::endl;
    delete pI  ;//回收动态内存
    pI = NULL;  //将pI置空,防止使用已销毁的内存。和上一语句不可颠倒,否则将造成内存泄漏
    return 0;
}
//delete后,别忘了将pI置空,防止使用已经销毁的内存。
View Code

运行结果:

技术分享

原文:http://www.cnblogs.com/lovemi93/p/7526554.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!