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

调用过程时,通常会向其传递一个或多个参数。 每个参数对应于基础编程元素。 基础元素和自变量本身都可以修改或不可修改。

可修改和非可修改元素

编程元素可以是 可修改的元素,它可以更改其值,也可以是 一个不可修改的元素,该元素在创建后具有固定值。

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

可修改的元素 不可修改的元素
局部变量(在过程内声明),包括对象变量,但不包括只读变量。 只读变量、字段和属性
字段(模块、类和结构的成员变量),只读除外 常数和文本
属性(只读除外) 枚举成员
数组元素 表达式(即使其元素是可修改的)

可修改和不可修改自变量

可修改参数是具有可修改的基础元素的参数。 调用代码可以随时存储新值,如果传递参数 ByRef,则过程中的代码还可以修改调用代码中的基础元素。

不可修改的参数要么具有不可修改的基础元素,要么传递 ByVal。 该过程无法修改调用代码中的基础元素,即使它是可修改的元素。 如果它是不可修改的元素,则调用代码本身无法修改它。

调用的过程可能会修改其不可修改参数的本地副本,但该修改不会影响调用代码中的基础元素。

另请参阅