• 值初始化-new


    程序如下
    #include<iostream>
    using namespace std;

    int main()
    {
            int *a=new int(1);
            int *b=new int(2);
            int *c=new int(3);
            cout<<a<<' '<<*a<<endl;
            cout<<b<<' '<<*b<<endl;
            cout<<c<<' '<<*c<<endl;
            return 0;
    }

    运行结果如下:

    0x21390 1
    0x213a0 2
    0x213b0 3

    int *p = new int(5); 
    这句是从堆上分配一个int型变量所占的字节内存,这个内存单元存放的整数值为5,然后让一个整形的指针变量p指向它的地址。
    释放方式:delete p;
    int *p = new int[5]; 
    这句相当于从堆上分配一个含有5个元素的整形数组所占的字节内存,然后让一个整形的指针变量p指向它的首址。
    释放方式:delete []p;(注意这个[]不能掉了,如果掉了就会只释放P[0]所占的空间,p[1]到p[4]不会被释放,产生内存泄露。)

  • 相关阅读:
    vant 移动helloworld
    ts
    study vant
    uniapp 上传图片
    electron
    1
    测试vue模板
    [Java] Spring_1700_Spring_DataSource
    [Java] Spring_1600_AOP_XML
    [Java] Spring_1500_AOP_Annotation
  • 原文地址:https://www.cnblogs.com/orchid-sky/p/3606997.html
Copyright © 2020-2023  润新知