可修改和不可修改参数之间的差异 (Visual Basic)

当调用过程时,通常要将一个或多个参数传递给它。 每个参数对应于一个基础编程元素。 基础元素和参数可更改还是不可更改。

可更改和不可更改元素

一个编程元素可以是 " 可更改元素,可以有它的已更改值, 不可更改元素,一次具有固定值它已创建。

下表列出了可更改和不可更改的编程元素。

可更改元素

不可更改元素

局部变量 (在过程内声明),包括对象变量,不包括只读

只读变量、字段和属性

字段 (模块、类和结构的成员变量),不包括只读

常数和文本

属性,不包括只读

枚举成员

数组元素

表达式 (即使元素可更改)

可更改和不可更改参数

可修改的参数 是一个带有可更改基础元素。 调用代码可以随时存储一个新值,,并且,如果您传递参数, ByRef (Visual Basic)过程中的代码还可以更改调用代码中的基础元素。

不可更改参数 具有不可更改的基础元素或者传递 ByVal (Visual Basic)。 该过程不能更改调用代码中的基础元素,因此,即使它是一个可修改的元素。 如果是不可更改元素,调用代码不能修改它。

被调用过程可以更改它的不可更改参数的本地副本,,但更改不会影响调用代码中的基础元素。

请参见

任务

如何:将参数传递给过程 (Visual Basic)

如何:更改过程参数的值 (Visual Basic)

如何:防止过程参数的值被更改 (Visual Basic)

如何:强制通过值传递参数 (Visual Basic)

概念

Visual Basic 中的过程

过程参数和变量 (Visual Basic)

通过值和通过引用传递参数 (Visual Basic)

通过值传递参数和通过引用传递参数之间的差异 (Visual Basic)

按位置和名称传递参数 (Visual Basic)

值类型和引用类型