C#.net和Visual Basic.net有什么区别?

时间:2009-02-07 13:09:53

标签: c# .net vb.net programming-languages

我在VB.net有一点经验,我想学习C#.net

VB.net和C#.net之间有什么区别?

这两者之间的表现有什么不同?

除了语法上的差异之外,我还有什么重大改变需要记住吗?

6 个答案:

答案 0 :(得分:8)

Wikipedia文章的语言功能部分提供了一个很好的概述。根据我的理解,表现几乎在每个方面基本相同。

答案 1 :(得分:5)

如果你编写等效的代码,性能是等价的,但是VB.NET的构造在那里是为了“向后兼容”,不应该使用它。 C#没有这些东西。我特意想到:

  • Microsoft.VisualBasic命名空间中的函数,它们是Trim()等其他标准.NET类的成员。 .NET类通常更快。

  • Redim和Redim Preserve。永远不要在.NET中使用,但它们在VB中。

  • On Error ...而不是异常。呸!

  • 后期绑定(有时被嘲弄地称为“Option Slow”)。从性能角度来看,在非动态.NET语言中不是一个好主意。

VB也缺少像自动属性这样的东西,这对我来说非常不利。这不是性能问题,但值得记住。

答案 2 :(得分:2)

我想你会在这篇文章中找到你问题的答案:

http://en.wikipedia.org/wiki/Comparison_of_C_sharp_and_Visual_Basic_.NET

http://geekswithblogs.net/jmccarthy/archive/2007/01/23/104372.aspx

编辑:Noldorin更快:x

答案 3 :(得分:2)

关于学习C#的第一件事是它不是发音为“C#.net”,它只是C#。微软将“.NET”加入VB,因为有一个以前版本的VB无法在.NET Framework上运行。 C#是专门为.NET Framework创建的,因此“.net”是隐含的,不必要的。另外,作为一个侧面说明,在你的简历中加入“C#.NET”真的会让一个知识渊博的经理知道你的技能水平,或者缺乏关于C#的技能水平。

同样this Wikipedia article非常适合展示C#和VB.NET之间的优缺点以及它们之间的差异。

答案 4 :(得分:2)

按照以下链接提供详细的差异

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

http://www.codeproject.com/KB/dotnet/vbnet_c__difference.aspx

http://support.microsoft.com/kb/308470

尽管http://support.microsoft.com/kb/308470提及的差异,C#和VB.Net都是.Net世界的一等公民

  

虽然之间存在差异   Visual Basic .NET和Visual C#.NET,   两者都是一流的编程   基于的语言   Microsoft .NET Framework,它们是   同样强大。 Visual Basic .NET是   真正的面向对象编程   语言包括新的和   改进的功能,如继承,   多态性,接口和   超载。两者都是Visual Basic .NET   和Visual C#.NET使用常见的   语言运行时。几乎没有   Visual之间的性能问题   基本的.NET和Visual C#.NET。视觉   C#.NET可能还有一些“权力”   处理非托管等功能   代码和Visual Basic .NET可能是   略微倾向于易用性   提供诸如迟到的功能   捆绑。但是,差异   Visual Basic .NET和Visual之间   与之相比,C#.NET非常小   他们在早期版本中的用途。

答案 5 :(得分:0)

  

无论您根据个人喜好选择哪种语言   和过去的经验一样,这两种语言都是强大的开发工具   共享共同语言的一流编程语言   .NET Framework中的运行时。

微软表示 https://web.archive.org/web/20061027230435/http://support.microsoft.com/kb/308470