Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Variables 在经典ASP中是否可以定义同一变量两次?_Variables_Vbscript_Asp Classic_Declaration - Fatal编程技术网

Variables 在经典ASP中是否可以定义同一变量两次?

Variables 在经典ASP中是否可以定义同一变量两次?,variables,vbscript,asp-classic,declaration,Variables,Vbscript,Asp Classic,Declaration,是否有可能在.asp文件中声明相同的变量两次?下面的示例看起来并不聪明,但这只是一个示例,我必须对其进行整理 Dim number : number = 1 Select Case number Case 1 Dim a Case 2 Dim a End Select 理论上你当然可以声明一个变量两次,问题是,如果变量在同一个范围内声明,asp会抛出一个错误 无论您想要实现什么,请记住,您(几乎)总是可以访问父范围中的变量,从而使双重声明毫无用

是否有可能在.asp文件中声明相同的变量两次?下面的示例看起来并不聪明,但这只是一个示例,我必须对其进行整理

Dim number : number = 1

Select Case number
    Case 1
        Dim a
    Case 2
        Dim a
End Select

理论上你当然可以声明一个变量两次,问题是,如果变量在同一个范围内声明,asp会抛出一个错误

无论您想要实现什么,请记住,您(几乎)总是可以访问父范围中的变量,从而使双重声明毫无用处

Dim number : number = 1
Dim a
Select Case number
   Case 1:
      a = "whatever"
   Case 2:
      a = "something different"
End Select
response.write a

理论上你当然可以声明一个变量两次,问题是,如果变量在同一个范围内声明,asp会抛出一个错误

无论您想要实现什么,请记住,您(几乎)总是可以访问父范围中的变量,从而使双重声明毫无用处

Dim number : number = 1
Dim a
Select Case number
   Case 1:
      a = "whatever"
   Case 2:
      a = "something different"
End Select
response.write a

问题是,我不能在父范围中声明这些变量。事实上,在case语句之后,我必须包含一些文件,不幸的是,这些文件具有相同的变量声明。我认为可能会有一些方法来实现这一点(例如,在Java中,这不是一个问题,我认为…)这不是我通常推荐的方法,但您可以忽略“选项显式”语句,这样就不需要在all@John仅供参考,这会使代码质量降低,并大大降低可维护性,但我认为这通常是这里的一个选项。@BigT为什么不能重命名一个?或者
set a=nothing
@BigT听起来您的代码只是一个大的mish mash块。将代码封装在
Sub
s或
Function
s中不是更明智吗?这样,您的声明将被保留,您的代码将更易于管理。问题是,我不能在父范围中声明这些变量。事实上,在case语句之后,我必须包含一些文件,不幸的是,这些文件具有相同的变量声明。我认为可能会有一些方法来实现这一点(例如,在Java中,这不是一个问题,我认为…)这不是我通常推荐的方法,但您可以忽略“选项显式”语句,这样就不需要在all@John仅供参考,这会使代码质量降低,并大大降低可维护性,但我认为这通常是这里的一个选项。@BigT为什么不能重命名一个?或者
set a=nothing
@BigT听起来您的代码只是一个大的mish mash块。将代码封装在
Sub
s或
Function
s中不是更明智吗?这样,您的声明将被保留,代码将更易于管理。