• c++中的动态内存分配


    使用new和delete动态的分配和释放内存

    使用new来分配新的内存块,通常情况下,如果成功,new将返回一个指针,指向分配的内存,否则将引发异常,使用new时,需要指定要为那种数据类型分配内存:

    Type *Pointer = new Type;

    需要为多个元素内存分配时,还可指定要为多少个元素分配内存:

    Type *Pointer = new Type[numElement];

    因此,如果需要给整型分配内存,可使用如下语法:

    int *pointToAnInt = new int;

    int *pointToNums = new int[10];

    使用new分配的内存最终都需要对应的delete进行释放:

    Type *Pointer = new Type;

    delete Pointer;

    也适用于多个元素分配的内存:

    Type *Pointer = new Type[numElements];

    delete[] = Pointer;

    对于使用new[...]分配的内存块,需要使用delete[]来释放,对于使用new为单个元素分配的内存,需要使用delete来释放。

    不在使用分配的内存,如果不释放他们,这些内存仍被预留并分配给你的应用程序。

    这将减少可供其他应用程序使用的系统内存量,甚至降低你的应用程序的执行速度,这被称为内存泄露,

    应不惜一切代价避免这种情况发生。

  • 相关阅读:
    线段的平移和旋转
    《构建之法》第一章读书笔记
    课程大作业总结
    2016.1.8
    2016.1.7
    2016.1.6总结
    初学MFC
    实时控制软件第三次编程作业
    实时控制软件设计第二次编程作业
    实时控制软件设计第一次编程作业
  • 原文地址:https://www.cnblogs.com/tanshengjiang/p/11945354.html
Copyright © 2020-2023  润新知