Область видимости переменных в функциях VBScript

У меня есть вопрос об области видимости переменной в VBScript. Я знаю, что есть следующие ключевые слова (из autoitscript.com ):

  1. Dim = Локальная область, если имя переменной еще не существует глобально (в этом случае глобальная переменная повторно используется!)
  2. Global = Принудительное создание переменной в глобальной области
  3. Local = Принудительное создание переменной в области Local / Function

Представьте, что у меня есть следующий файл .vbs:

Dim strPath

strPath = "C:\folder"

DisplayPath strPath

Sub DisplayPath(strPath) 'Does this strPath get it's own local scope?
  MsgBox strPath
End Sub

В функции: DisplayPath (strPath) , является ли strPath локальной переменной? Или у функций / подпрограмм есть доступ к strPath , определенному в верхней части основного раздела скрипта как глобальная переменная?

Кроме того, какой смысл явно использовать Dim вместо простого определения переменных по мере их использования, что возможно в языках сценариев?

10
задан JohnB 2 October 2010 в 17:10
поделиться