首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

菜鸟的困惑,有关变量占用内存的有关问题,大家不要笑小弟我啊

2012-03-09 
初学者的困惑,有关变量占用内存的问题,大家不要笑我啊!当我们在程序中定义了一个变量,那么系统便为这个变

初学者的困惑,有关变量占用内存的问题,大家不要笑我啊!
当我们在程序中定义了一个变量,那么系统便为这个变量预留了一定的存储空间

(程序A)
Private   Sub   Form_Load()
    Dim   myvar   As   Integer
End   Sub

(程序B)
Private   Sub   Form_Load()
    Dim   i   As   Integer
    For   i   =   1   To   10000
        Dim   myvar   As   Integer
    Next   i
End   Sub

那么请问,当这两个程序运行时,程序B所占用的内存是否是程序A所占用内存的10000倍?


[解决办法]
不是的,你的第二个程序中,只是同一个变量的多次重新定义,所以内存容量并不是增加10000次
[解决办法]
Dim myvar As Integer
重复定义只不过是把内存CLEAR而已,内存还是那一块地址
[解决办法]
我这样理解,声明一个变量,程序不会动态分配内存,
只有当变量被使用,程序才会分配内存,
所以,我觉得,楼主的程序2中,内存里只有变量i。,。
[解决办法]
对于同一个变量重复定义只有再数组变量的ReDim时才可能改变内存的占用量。

热点排行