请问在C++中的new和delete怎么用?还有heap的含义?

请详细讲一下,以及使用它们的好处

慕田峪7331174
浏览 274回答 2
2回答

守着一只汪

主要是要动态申请空间时,才会用new而用了new,为了使用那个空间,就必须用一个指针指向它,如int * a=new int(10) ;用完删掉,如delete a;为了让指针指向他,就必须使用 指针名=new 对象名new 是在堆中开辟内存空, delete 是释放内存空间new 是在堆中开辟内存空间,类似C语言中的malloc函数delete 是释放内存空间,类似C语言中的free函数

倚天杖

当编译一个C++程序时,计算机的内存被分成了4个区域,一个包括程序的代码,一个包括所有的全局变量,一个是堆栈,还有一个是堆(heap),我们称堆是自由的内存区域,我们可以通过new和delete把对象放在这个区域。你可以在任何地方分配和释放自由存储区。但是要注意因为分配在堆中的对象没有作用域的限制,因此一旦new了它,必须delete它,否则程序将崩溃,这便是内存泄漏.
打开App,查看更多内容
随时随地看视频慕课网APP