Visual Basic和C 功能對比

2021-04-17 00:42:54 字數 1656 閱讀 7171

首先宣告,此處僅作語言方面的對比,在.net生產力上,兩者沒有區別。進行這個對比是為了澄清對visual

basic

和c#功能錯誤的認識和流言。以下所有區別都是經過較為深刻的研究得出的,相比一些常見的對比來講更有科學性

下面先對比visual studio .net 2003中,兩種語言功能的對比。*表示對方語言中沒有這項功能,但是可以用別的語法在il級別實現完全同樣的功能。注意,本次比較只選擇有意義的功能,某些功能,如迴圈、分支語句等傳統功能不在比較之列。同時,vb因相容老版本而遺留的,不具有現代語言特徵的語法也不在比較之列(如on error語句,option explicit語句等)。

visual

basic

有而c#沒有的功能

c#有而visual

basic

沒有的功能

區域性static變數*

withevents和handles語法*

可選引數

按名傳遞

屬性引數

按非虛方式訪問乙個虛函式

換名實現介面

後期繫結

with語句*

用imports匯入靜態成員

模組is操作符*

try…catch when語句

visual

basic

執行時庫的功能和函式

運算子過載

為event指定add與remove訪問器

using語句*

xml注釋文件

不安全**和指標

as操作符

out修飾符*

編譯器cls檢查

接下來,是未來visual studio 2005中兩者功能的對比。在這個對比中,所有因visual studio 2005新增功能產生的差異,將以粗體字表示。注意,並不是每一項新增功能都能產生兩者的差異,比如泛型和partial type都是兩者皆有的新功能。

visual

basic

有而c#沒有的功能

c#有而visual

basic

沒有的功能

區域性static變數*

withevents和handles語法*

可選引數

按名傳遞

屬性引數

按非虛方式訪問乙個虛函式

換名實現介面

後期繫結

with語句*

用imports匯入靜態成員

is操作符*

try…catch when語句

visual

basic

執行時庫的功能和函式

預設例項

my命名空間

為event指定add與remove訪問器

不安全**和指標

out修飾符*

迭代器

匿名方法

可見無論什麼版本的對比,都是visual

basic

的功能比較多。當然,僅憑功能的多少,不能改變個人對語言的喜好,也不大可能成為選擇開發工具的依據。但是有一句話給我的印象很深,我在csdn上做調查時,有乙個人說他用c#的理由是:「我用c#是因為c#比vb功能強,哪怕只是一點點也是強」。即使vb比較強,還是會有人這麼說。這就說明語言或開發工具的歧視不是功能差異造成的,那真正的原因是什麼呢?

Visual Basic和C 功能對比

首先宣告,此處僅作語言方面的對比,在.net生產力上,兩者沒有區別。進行這個對比是為了澄清對visual basic和c 功能錯誤的認識和流言。以下所有區別都是經過較為深刻的研究得出的,相比一些常見的對比來講更有科學性 下面先對比visual studio net 2003中,兩種語言功能的對比。表...

體驗Visual Basic 9 0新功能

前言 visual basic code named orcas visual basic 9.0 對基於 visual basic code named whidbey visual basic 8.0 進行了一些語言方面的擴充套件,以統一的方式支援以資料為中心的程式設計 建立,更新和查詢關聯式資...

C 與Visual Basic的異與同

c 是一種高階程式語言,是一種安全 穩定 簡單 優雅的程式語言,它與visual basic有很多相同的地方,同時也有很多不同的地方。我們今天這篇部落格本著學習c 的原則,著重介紹一下c 與visual basic的相同點和不同點。從幾個方面分別闡述。限於篇幅的原因,我們可能會分成幾個部分,以幾篇部...