zoukankan      html  css  js  c++  java
  • [C++] c++ new() 与new[]的区别

    new和delete运算符用于动态分配和撤销内存的运算符
    new用法:
              1.     开辟单变量地址空间
                   1)new int;  //开辟一个存放数组的存储空间,返回一个指向该存储空间的地址.int *a = new int 即为将一个int类型的地址赋值给整型指针a. 
                   2)int *a = new int(5) 作用同上,但是同时将整数赋值为5
              2.     开辟数组空间
                   一维: int *a = new int[100];开辟一个大小为100的整型数组空间
                   二维: int **a = new int*[5]
                         for()
                         {a[i] = new int[6];}
                   三维及其以上:依此类推.
             一般用法: new 类型 [初值]
    delete用法:
              1. int *a = new int;
                   delete a;   //释放单个int的空间
              2.int *a = new int[5];
                   delete [] a; //释放int数组空间
     
              要访问new所开辟的结构体空间,无法直接通过变量名进行,只能通过赋值的指针进行访问.
              用new和delete可以动态开辟,撤销地址空间.在编程序时,若用完一个变量(一般是暂时存储的数组),下次需要再用,但却又想省去重新初始化的功夫,可以在每次开始使用时开辟一个空间,在用完后撤销它.

  • 相关阅读:
    windows类型
    网络编程socket、udp
    mem族函数与str族函数(待填)
    位运算符的用处(待填)
    c51较c比较,单片机最小系统
    数据结构之 顺序栈的操作
    [置顶] 数据结构之 顺序栈的操作
    java中常用的帮助类。加快开发速度
    php实现安装程序的 安装
    php压缩文件帮助类
  • 原文地址:https://www.cnblogs.com/robbychan/p/3787003.html
Copyright © 2011-2022 走看看