VBScript学习笔记 - 作用域,变量显式声明

<p>在脚本主体中声明或创建一个变量时,默认是全局作用域(global scope)的;而在函数或子例程中定义的变量,默认是私有作用域(private scope)的。</p>
<p>要显式声明变量的作用域,可用public语句和private语句</p>
<div class="cnblogs_code" style="border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; border-bottom: #cccccc 1px solid; padding-bottom: 5px; padding-top: 5px; padding-left: 5px; border-left: #cccccc 1px solid; padding-right: 5px; background-color: #f5f5f5"><pre><span style="color: #0000ff">public</span> MyArray(<span style="color: #800080">10</span>)</pre></div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>默认情况下,变量不用事先声明也能使用。但这可能造成由于拼写错误而创建一个新变量,出现bug。</p>
<p>Option Explicit语句能帮助防止这类bug。</p>
<p>把语句Option Explicit作为脚本文件的第一行,接着用dim语句列出在脚本中使用的每个变量。(<em>dim常用来声明数组,但也可用来声明变量</em>)</p>
<div class="cnblogs_code" style="border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; border-bottom: #cccccc 1px solid; padding-bottom: 5px; padding-top: 5px; padding-left: 5px; border-left: #cccccc 1px solid; padding-right: 5px; background-color: #f5f5f5"><pre><span style="color: #0000ff">option</span> <span style="color: #0000ff">explicit</span>
<span style="color: #0000ff">dim</span><span style="color: #000000"> tomorrow
tomorrow </span>= <span style="color: #800000">"</span><span style="color: #800000">Saturday</span><span style="color: #800000">"</span><span style="color: #000000">
wscript.echo </span><span style="color: #800000">"</span><span style="color: #800000">Tomorrow is </span><span style="color: #800000">"</span> &amp; tomottow</pre></div>

<p> 当脚本运行到未定义的tomottow时,会产生一条错误信息。如果没有option explicit语句,则不会报错,只是直接输出”Tomorrow is “。</p>

时间: 2024-10-05 23:27:36

VBScript学习笔记 - 作用域,变量显式声明的相关文章

【算法学习笔记】88.显式DFS SJTU OJ 2202. 梅西的过人

#include <iostream> #include <stack> #include <cstdio> #include <cstring> using namespace std; int k,n,m; bool map[1000+5][1000+5]; bool vis[1000+5][1000+5]; int dx[4] = {0,0,-1,+1}; int dy[4] = {+1,-1,0,0}; void init(){ cin>>

PHP学习笔记——1.变量

目录: PHP学习笔记——1.变量 PHP学习笔记——1.常量 1.变量的组成 包括:变量名.变量值.存储地址 例:$a = 23; 执行后,在变量表中添加了$a这个变量名,在内存中开辟出一块空间,空间值为23,而$a指向23所在空间位置 例:echo $a; 执行后,先从变量表中找到$a,再根据其地址找到相应内存空间地址,读出23的值 2.变量的声明 $变量名 = 变量值; 3.变量名命名规范 字母.下划线.数字的组合 数字不能作为开头 区分大小写 4.变量的类型 ①五种标量: 整型:0 2

lambda显式声明返回值

10.21 编写一个lambda,捕获一个局部int变量,并递减变量值,直至它变为0.一旦变量变为0,再调用lambda应该不再递减变量.lambda应该返回一个bool值,指出捕获的变量是否为0. #include<iostream> #include<algorithm> using namespace std; int main() { int n=5; auto f=[n]() mutable ->bool {if(n>0) return --n;else re

Go语言学习笔记(二) [变量、类型、关键字]

日期:2014年7月19日 1.Go 在语法上有着类 C 的感觉.如果你希望将两个(或更多)语句放在一行书写,它们 必须用分号分隔.一般情况下,你不需要分号. 2.Go 同其他语言不同的地方在于变量的类型在变量名的后面.例如:不是,int a,而是 a int.当定义了一个变量,它默认赋值为其类型的 null 值.这意味着,在 var a int后,a 的 值为 0.而 var s string,意味着 s 被赋值为零长度字符串,也就是 "". 3.Go语言的变量声明和赋值 在Go中使

Go语言学习笔记1 变量,类型以及赋值

1.变量 1.1 声明变量 使用var关键字可以创建一个指定类型的变量: var i int = 0 var i = 0 var i int 以上三个表达式均是合法的,第三个表达式会将i初始化为int类型的零值,0:如果i是bool类型,则为false:i是float64类型,则为0.0:i为string类型,则为"":i为interface类型,则为nil:i为引用类型,则为nil:如果i是struct,则是将struct中所有的字段初始化为对应类型的零值. 可以在同一条语句中声明多

c++学习笔记:变量

c++学习笔记:变量(2) 先说明一下上一篇博文中的一个问题:char.signed char.unsigned char 这三者到底是怎么回事. signed char与unsigned char 是明确的拥有含义的,也就是说当定义了一个signed char那么这个char一定是有符号的整数类型.而当定义了一个unsigned char时这个char是明确无符号的整数类型.但是char却不一定了,它的行为依靠具体的实现.(“普通char究竟是有符号还是无符号,此事由实现确定.这也可能导致出现

JavaScript学习笔记——js变量的布尔值

typeof(1): numbertypeof(NaN): numbertypeof(Number.MIN_VALUE): numbertypeof(Infinity): numbertypeof("123"): stringtypeof(true): booleantypeof(window): objecttypeof(Array()): objecttypeof(function(){}): functiontypeof(document): objecttypeof(null)

C++学习笔记25,永远将析构函数声明为virtual

要永远记得将析构函数声明为virtual----><<effective c++>> 或许你觉得这句话不一定对,但无需质疑的是这句话是很有用的. 查看下面的例子: #include <iostream> #include <string> using namespace std; class B{ public: ~B(){ cout<<"base is destroyed!"<<endl; } }; cla

ruby 学习笔记 2 -变量

变量 在ruby的世界里,变量有5种,全局变量 局部变量 实例变量 常量 类变量以及伪变量 常用的: 全局: 在全局使用,使用$开头,因为是全局的,所以在任何的代码例子中都可以改变其值,造成混乱,所以不建议使用. 局部: 在一定范围内有作用.如 i = 10 ,其中i 就是一个局部变量 常量: 例如圆周率Pi,但是Pi 我们可以赋予他其他值,是可以变化的. 常量的首个字母必须大写,当试图改变常量值时,解释器会给出警告“ex4.rb:19: warning: already initialized