new和delete关键字基本用法new关键字在 C 中用于动态内存分配允许在运行时按需分配堆内存。分配单个对象int*ptrnewint;// 分配一个 int 类型的内存空间//在C语言中int *p (int *)malloc(sizeof(int));分配对象数组int*arrnewint[10];// 分配一个包含 10 个 int 的数组//在C语言中int *arr (int *)malloc(sizeof(int)*10);初始化对象MyClass*objnewMyClass(arg1,arg2);// 调用构造函数初始化内存释放动态分配的内存必须手动释放否则会导致内存泄漏。释放单个对象deleteptr;// 释放 ptr 指向的对象释放数组delete[]arr;// 释放 arr 指向的数组注意事项异常安全new在内存分配失败时会抛出std::bad_alloc异常除非使用nothrow版本。内存泄漏未正确释放new分配的内存会导致内存泄漏。正确匹配new分配单个对象时使用deletenew[]分配数组时使用delete[]否则会导致未定义行为。示例代码int*ptrnewint;// 动态分配一个 intint*arrnewint[10];// 动态分配一个 int 数组MyClass*objnewMyClass(arg1,arg2);// 动态构造对象deleteptr;// 释放单个对象delete[]arr;// 释放数组确保每次new都有对应的delete或delete[]以正确管理内存。