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

后缀变化的变量的定义解决方案

2011-12-30 
后缀变化的变量的定义我想在VB里定义后缀变化的变量,如a1,a2,...an,n的值是不定的,要怎么实现(不是定义数

后缀变化的变量的定义
我想在VB里定义后缀变化的变量,如a1,a2,...an,n的值是不定的,要怎么实现(不是定义数组)?期待各位大神的回答

[解决办法]
定义后缀变化的变量?就是“定义变量”。
在 VB 里定义变量,只有手工在代码里定义,当然有些也可以不定义。
没有什么程序运行后定义变量的概念。

因为定义变量这个过程,说白了就是编译时在编译代码中预留符合变量类型的空间而已,
在程序使用时,只是作为内存地址在程序里被使用的内存数据。
这种编译时预留内存空间的动作就是定义变量的过程。既然这个预留空间的动作是在编译时
才会产生,那么就不可能在运行时做,运行时只能做的是另辟内存空间或修改内存数据,
这种操作不叫定义,而是操作内存。而且变量名称其实只是在写代码的时候才有的概念,
在程序运行时,是没有变量名称的概念,所以程序运行后,无论你什么样的变量名称,即使是
中文的,也只会被程序当一个个内存地址来用,程序是不会知道编译前他是什么名称的。
至于像 javascript 那种用字符串找对象的方法,和变量的概念不一样,因为那是找对象属性值,
而不是找变量名。所以你应该搞清楚的是“什么是变量?”这个问题。
[解决办法]
举个例子

VB code
Dim sc   Set sc = CreateObject("ScriptControl")   sc.language = "VBScript"      Dim Var$, VCount$, S1$, Sctmp$      Var = "a"                                      '变量前缀名称      VCount = InputBox("请输入变量的数量", "输入")  '变量数量         Sctmp = "sub sum()" & vbCrLf                   '脚本代码---过程开始      Dim S1$   For i = 1 To VCount       Sctmp = Sctmp$ & "a" & i & "=" & InputBox("请输入" & Var & i & "的值", "输入") & vbCrLf       S1 = S1 & Var & i & "+"   Next      S1 = Left(S1, Len(S1) - 1)         Sctmp = Sctmp & "Msgbox (""" & S1 & """ & "" = ""  & " & S1 & ") " & vbCrLf      Sctmp = Sctmp & "End Sub"                     '代码---过程结束      MsgBox "VBCode" & vbCrLf & vbCrLf & Sctmp      '显示全部代码      sc.AddCode Sctmp                '加入代码      sc.run "Sum"                    '运行过程 

热点排行