早教吧作业答案频道 -->其他-->
开辟内存有啥好处呀?VB里没这个不也照样用的好好地?为什么C++里要搞出来这个?举个例子说明它的优点.诸位回答的都有理,开始为什么VB不用关心回收呢?C++里必须回收.它们的机制还是有区别
题目详情
开辟内存有啥好处呀?VB里没这个不也照样用的好好地?为什么C++里要搞出来这个?举个例子说明它的优点.
诸位回答的都有理,开始为什么VB不用关心回收呢?C++里必须回收.它们的机制还是有区别的.
诸位回答的都有理,开始为什么VB不用关心回收呢?C++里必须回收.它们的机制还是有区别的.
▼优质解答
答案和解析
动态申请内存是C/C++的独有特点之一.
在处理一组未知数据个数的情况下,通常需要声明一个足够大的数组来装填这些数,比如有100到1000个整形数有待处理,那么事先申请的数组至少要有1000个整形数的静态单元,假定最后得到的数据个数为700,那么就有1000 - 700 = 300个存储空间被闲置而造成浪费.
具体的例子是,一个数据文件有N + 1行,第1行是数据个数,第2行到第N + 1行是整形数,首先读出数据个数n,利用动态申请内存时,只需定义 int *a = (int *)malloc(n * sizeof(int));,然后将下面的数据读入数组即可;如果以静态数组方式,则需在编译期间就得给出数组的大小,而不是在运行期间给出.
另外,在处理链表、队列、二叉树等数据项时,没有动态申请内存的功能是无法完成的,你想想,在VB的编程项目中,有这样的数据类型吗?没有,其根本原因就是该语言不具备这样的能力.
在处理一组未知数据个数的情况下,通常需要声明一个足够大的数组来装填这些数,比如有100到1000个整形数有待处理,那么事先申请的数组至少要有1000个整形数的静态单元,假定最后得到的数据个数为700,那么就有1000 - 700 = 300个存储空间被闲置而造成浪费.
具体的例子是,一个数据文件有N + 1行,第1行是数据个数,第2行到第N + 1行是整形数,首先读出数据个数n,利用动态申请内存时,只需定义 int *a = (int *)malloc(n * sizeof(int));,然后将下面的数据读入数组即可;如果以静态数组方式,则需在编译期间就得给出数组的大小,而不是在运行期间给出.
另外,在处理链表、队列、二叉树等数据项时,没有动态申请内存的功能是无法完成的,你想想,在VB的编程项目中,有这样的数据类型吗?没有,其根本原因就是该语言不具备这样的能力.
看了开辟内存有啥好处呀?VB里没这...的网友还看了以下:
解决一条思考题把这些桃平均分给7只猴子,正好还剩1个;如果平均分给8只猴子,正好也剩个.这些桃至少有 2020-03-30 …
不如须臾之所学也的“须臾”是什么意思 2020-03-31 …
公民自觉履行法定义务,下列说法正确的是()A.法律所鼓励的可做可不做B.法律要求做的必须去做C.年 2020-04-08 …
Idon'twantwearthisclothes是否错误.1.是否是出现两个动词原形就错啦?2. 2020-05-14 …
“夫学须静也,才须学也”中的须是什么意思?才须学也的须 2020-05-20 …
夫学须静也,才须学也的才是什么意思? 2020-05-20 …
英语翻译蒙恩乐园是一个福利院,翻译蒙恩乐园?蒙恩福利院也行!必须准确! 2020-05-21 …
诫子书诸葛亮夫君子之行,静以修身,俭以养德。非淡泊无以明志,非宁静无以致远。夫学须静也,才须学也, 2020-06-09 …
沐则心覆中表现了头须怎样的性格?原文文公之出也,竖头须,守藏者也,不从.公入,乃求见,公辞焉以沐. 2020-06-16 …
诫子书夫君子之行,静以修身,俭以养德。非淡泊无以明志,非宁静无以致远。夫学须静也,才须学也,非学无 2020-06-18 …