一、在栈(Stack)上创建对象
Student是一个类,创建一个实例化对象:
Student stu;
下面进行创建对象指针的操作(非必须):
上面代码中创建的对象 stu 在栈上分配内存,需要使用&获取它的地址:
Student *pStu = &stu;
pStu 是一个对象指针,它指向 Student 类型的数据,也就是通过 Student 创建出来的对象。
二、在堆(heap)上创建对象
Student *pStu = new Student;
栈内存是程序自动管理的,不能使用 delete 删除在栈上创建的对象;堆内存由程序员管理,对象使用完毕后可以通过 delete 删除。在实际开发中,new 和 delete 往往成对出现,以保证及时删除不再使用的对象,防止无用内存堆积。
下面展示一个创建一个数组的写法:
int *p = new int[10]; //分配10个int型的内存空间
delete[] p;
文章介绍了如何在栈上通过Student类创建对象以及获取其指针,强调了栈内存的自动管理特性。同时,讲解了在堆上使用new创建对象和使用delete释放内存的重要性,提醒开发者注意new和delete的配对使用,避免内存泄漏。还给出了动态分配数组的例子及其释放方式。
1293

被折叠的 条评论
为什么被折叠?



