您的位置:首页 > 编程语言 > C语言/C++

关于C++中new和delete的几点说明

2013-10-24 13:59 567 查看
用途:动态分配和撤销内存空间,和C语言中的malloc和free的作用一样,区别在于new和delete的效率更高。

注意:new和delete不是函数,而是C++提供的运算符,和加减乘除运算符一样。

使用:new 类型 [初值],如 new int  [100];

            delete    指针变量    (对变量)

            delete   [ ] 指针变量  (对数组)

执行结果:new  返回一个指针,如未能成功分配内存,则返回NULL;delete删除指针指向的空间。

例子:

#include<iostream>

#include<string>

using namespace std;

struct Student

{

     string name;

     int id;

     char sex;  

};

int main()

{

     Student *p;

     p=new Student;

     

     p->name="Wang Fang";

     p->id=216016;

     p->sex='f';

     

     cout<<p->name<<endl;

     cout<<p->id<<endl;

     cout<<p->sex<<endl;

     

     delete p;

     

     system("pause");

     return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ struct