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可以动态开辟,撤销地址空间.在编程序时,若用完一个变量(一般是暂时存储的数组),下次需要再用,但却又想省去重新初始化的功夫,可以在每次开始使用时开辟一个空间,在用完后撤销它.

  • 相关阅读:
    flash中网页跳转总结
    as3自定义事件
    mouseChildren启示
    flash拖动条移出flash无法拖动
    需要一个策略文件,但在加载此媒体时未设置checkPolicyFile标志
    Teach Yourself SQL in 10 Minutes
    电子书本地转换软件 Calibre
    Teach Yourself SQL in 10 Minutes
    Teach Yourself SQL in 10 Minutes
    Teach Yourself SQL in 10 Minutes – Page 31 练习
  • 原文地址:https://www.cnblogs.com/robbychan/p/3787003.html
Copyright © 2011-2022 走看看