top
Loading...
從VisualBasic6.0到VisualBasic.NET的轉換(1)

Microsoft Visual Basic.NET 是 Microsoft Visual Basic? 的后續版本,它是基于 .NET 框架重新設計的,您可以用它來輕松地創建用于 Microsoft Windows? 操作系統和 Web 的下一代應用程序。使用 Visual Basic.NET,可視化開發 Web 應用程序、Web 服務、Windows 應用程序和服務器端組件將變得輕而易舉。此外,Visual Basic.NET 使用了 Windows 應用程序的 XCOPY 部署方案,使您不必再擔心 DLL 版本問題。隨著 Visual Basic.NET 的發布,“DLL 噩夢”將成為過去。

在設計 Visual Basic.NET 時,我們著眼于世界各地 Visual Basic 開發者的要求。Visual Basic 語言現在是真正的面向對象語言,并支持實現繼承。窗體設計器支持可視化繼承,并包含窗體自動調整大小、資源本地化和訪問選項支持等新特性。現在的數據工具繼續支持 XML 數據,并可以共同使用設計時數據綁定和斷開數據。此外,Visual Basic.NET 是基于 .NET 框架直接創建的,因此可以使用所有的平臺特性,并能夠與其他 .NET 語言協同工作。

在發布這些功能的同時,我們對產品的幾個方面作了修改。本文檔介紹了從 Visual Basic 6.0 到 Visual Basic.NET 的一些變更,并解釋了進行這些變更的原因。本文還介紹 Visual Basic.NET 升級向導的功能。它是作為產品的一部分提供的工具,可以幫助您將現有的應用程序升級為 Visual Basic.NET 版本。

有關從 Visual Basic 6.0 升級到 Visual Basic.NET 的其他信息,請參閱白皮書《準備將 Visual Basic 6.0 應用程序升級到 Visual Basic.NET》(英文)。此白皮書介紹了升級過程并提供了盡可能順利升級的建設性意見。

語言
Variant
Visual
Basic 6.0 Variant 是一種特殊的“通用”數據類型,可以包含除定長字符串之外的各類數據。Object 變量用作指向對象的指針。默認的數據類型為 Variant。

Visual Basic.NET


公共語言運行時 (CLR) 使用 Object 作為通用數據類型。Visual Basic.NET 沒有繼續使用 Variant 作為通用數據類型,而是選擇采用 CLR 命名規則,以避免在跨語言開發時造成混亂。僅使用一種通用數據類型將簡化類型系統。默認的數據類型為 Object。

升級
向導


將 Variant 數據類型變為 Object,因此以下代碼:

Dim x As Variant
升級后將變為:

Dim x As Object


Integer 和 Long
Visual
Basic 6.0 Long 變量存儲為帶有符號的 32 位數字,而 Integer 變量存儲為 16 位數字。

Visual Basic.NET


Long 變量存儲為帶有符號的 64 位數字,Integer 變量存儲為 32 位數字,而 Short 變量存儲為 16 位數字。在 32 位系統中,32 位整數操作比 16 位和 64 位整數操作都要快。這意味著 Integer 將是最有效和最基本的數字類型。

由于部分 .NET 框架技術以現代的 32 位和 64 位技術為基礎,因此根據新技術更新數據大小是明智之舉。

升級
向導


修改變量的類型,因此以下代碼:

Dim x As IntegerDim y As Long
升級后將變為:

Dim x As ShortDim y As Integer


Currency
Visual
Basic 6.0 Visual Basic 6.0 支持 Currency 數據類型。您不能將變量聲明為 Decimal 類型(雖然變量可以具有子類型 Decimal)。

Currency 變量以整數格式存儲為 64 位數字,以 10,000 為標度,以將數字表示為定點數,其小數點左邊為 15 位,右邊為 4 位。這種表示形式可以表示 -922,337,203,685,477.5808 至 922,337,203,685,477.5807 范圍內的數字。

Decimal 變量存儲為帶有符號的 96 位整數,標度為 10 的不同乘冪。10 次冪的刻度因子指定了小數點右邊的數字位數,其范圍為 0 至 28。當指數為 0 時(無小數位數),最大的可能值為 +/-79,228,162,514,264,337,593,543,950,335。當指數為 28 時,最大值為 +/-7.9228162514264337593543950335,最小的非零值為 +/-0.0000000000000000000000000001。

Visual Basic.NET

Currency 數據類型的精度不夠,無法避免四舍五入的誤差,因此創建了 Decimal 這種數據類型。

北斗有巢氏 有巢氏北斗