当前位置: 网学 > 编程文档 > VB > 正文

从Visual Basic 6.0 到 Visual Basic.NET 的转换

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/16
下载{$ArticleTitle}原创论文样式
、BitAnd 和 BitXor 均用于位逻辑运算。Bitxxx 运算符不具有简化作用。

升级向导

如果 And/Or 语句是非布尔型或者包含函数、方法或属性,此语句将升级为使用兼容性函数,与 Visual Basic 6.0 中的表现形式相同。如果 And/Or 语句是布尔型,此语句将升级为使用本地 Visual Basic.Net 语句。
有关该主题的全面说明,请参阅白皮书《准备将 Visual Basic 6.0 应用程序升级到 Visual Basic.NET》(英文)。

运算符优先级
Visual Basic 6.0
逻辑和位的 And、Or、Xor 和 Not 运算符的优先级高于比较运算符。

Visual Basic.NET
And、Or、Xor 和 Not 运算符的优先级低于比较运算符,因此 a > b And a < c 将被认为是 (a > b) And (a < c)。新的 BitAnd、BitOr 和 BitXor 运算符的优先级高于比较运算符,因此 a BitAnd &HFFFF <> 0 将被认为是 ((a BitAnd &HFFFF) <> 0)。
由于 BitAnd、BitOr 和 BitNot 运算符可以返回数值结果,因此其优先级高于关系运算符,这样,就允许这三个运算符返回的结果与其他值进行比较。

升级向导

由升级向导处理。有关该主题的全面说明,请参阅白皮书《准备将 Visual Basic 6.0 应用程序升级到 Visual Basic.NET》(英文)。

调用过程
Visual Basic 6.0
支持两种类型的过程调用:一种使用 Call 语句,要求使用括号括住参数列表;另一种不使用 Call 语句,不能使用括号来括住参数列表。
在 Visual Basic 6.0 中的一种常见情况是,开发者调用的过程不使用关键字,而又在参数列表外使用括号。幸运的是,当有一个以上的参数时,编译器会将其作为语法错误检测出来。但是,当仅有一个参数时,单一参数外的括号会将参数变量传递为 ByVal 而不是 ByRef。这会导致难以找到的小错误。

Visual Basic.NET
在所有情况下参数列表均需要使用括号。

升级向导

为没有使用括号的过程调用插入括号。

静态过程
Visual Basic 6.0
通过 Static 关键字可以声明过程,此关键字表明在调用之间保留过程的局部变量。

Visual Basic.NET
在过程中不支持 Static 关键字,并且所有的静态局部变量均需通过 Static 语句显式声明。 需要将过程中的所有变量均声明为静态的情况很少。删除此功能简化了语言,并且提高了可读性,因为局部变量总是位于堆栈中,除非已显式声明为 Static。

升级向导

如果过程标记为 Static,则所有的局部变量均变为 Static。

参数的 ByVal/ByRef 默认值
Visual Basic 6.0
参数未指定其默认值为 ByVal 或 ByRef 时,其默认值为 ByRef。

Visual Basic.NET
<参数未指定其默认值为 ByVal 或 ByRef 时,其默认值为 ByVal。
将参数默认值指定为 ByVal 而不指定为 ByRef,可以避免过程错误地修改由调用方传递的变量。这也使得默认的调用规则与赋值一致,以便参数有效地绑定至表达式(通过表达式赋值为正式参数)。 请用户注意避免由 Visual Basic 6.0 升级到 Visual Basic.NET 带来的混乱。如果用户输入的参数声明未显式指定其默认值为 ByVal 或 ByRef,IDE 将为其自动添加 ByVal 关键字。

升级向导

为没有指定 ByVal 或 ByRef 为默认值的参数添加 ByRef。

IsMissing 参数和可选参数
Visual Basic 6.0
没有默认值的可选 Variant 参数将被初始化为特殊的错误代码,此错误代码可以由 IsMissing 函数检测出来。

Visual Basic.NET
在 Visual Basic.NET 中要求所有的可选参数均指定默认值。这样可以减少语言中特殊值的数量,从而简化语言。

升级向导

IsMissing 函数由 IsNothing 函数代替,并且标记有升级警告注释。

ParamArray 参数
Visual Basic 6.0
当变量传递给 ParamArray 参数时,可以通过被调用的函数修改。不支持 ByVal ParamArray 元素。

Visual Basic.NET
当变量传递给 ParamArray 参数时,不能通过被调用的函数修改。不支持
  • 下一篇资讯: 微软.Net程序设计FAQ
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号