C++ new,delete空间申请

这篇博客介绍了C++中使用`new`和`delete`进行动态内存分配和释放的基本操作,包括单个整数和整数数组的情况。强调了在C++中使用`new[]`和`delete[]`对数组进行管理的必要性,以及与C语言中`malloc`和`free`的区别。同时提到了构造和析构函数在动态内存管理中的作用。

#include<iostream>
using namespace std;

//int main()
//{
//    int* p = new int;//类型一定要对上, 也可以直接通过new int(5)对*p赋值为5;
//       //int* p = (int*)malloc(sizeof(int));C的申请空间
//    *p = 133;//写
//    cout<<*p<<endl;//读
//    delete p;
//    return 0;
//}


int main()
{
    int* p = new int[5];
       //int*p=malloc(5*4);c申请数组;
       //memset(p, 0, 5 * 4);//给连续的空间赋值 memory set
    p[0] = 14;
    p[1] = 15;
    p[2] = 16;
    cout << p[0] << endl << p[1] << endl << p[2] << endl;

        delete[] p;//释放数组必须加[]
        return 0;
}

 * new delete 可以触发构造和析构,C语言则不行;指针声明和空间分配方式不同,使用完全相同,在C++里,除了对象空间申请之外,使用malloc与free是完全可以的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

clown_30

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值