我爱Aspx >> VC.Net >> C#和C++的速度大比拼(第一部分)C#和C++的速度大比拼(第一部分)
软.NET平台首推的应用程序开发语言。C#编写的应用程序必须运行在一个特殊的环境中,即受控环境(managed)。与以往非受控(unmanaged)的C++相比,C#应用程序的性能到底如何呢?经过几个方面的性能测试,我们发现C#应用程序的运行速度远远不如非受控C++应用程序。在这场速度的大比拼中,非受控C++具有明显的优势。它将一如既往地成为大多数程序员的最爱。
本文拟通过一些正统的和非正统的性能测试方法,对C#和C++程序进行测试。在这些测试的统计数据中。读者会发现C#程序的性能到底如何。做为程序员,我对C++情有独钟。在我的职业生涯中,一直都在使用Visual C++。希望本文能给程序员们一点提示,以便在编写不同的应用时选择适合的编程语言。
Visual C++是Win32平台上性能最好的编译器之一,我想这已经成为一种共识。.NET是微软提供的一种新的应用平台。
首先我说明一下自己机器的软硬件环境:
硬件环境:Dell Inspiron 3800 G700GT 笔记本电脑 CPU/PIII/700,ROM/128MB,HD/12GB。
软件环境:Windows 2000 + SP2,.NET平台 + Visual Studio.NET,Office XP。
所有的测试均是在命令行状态下以RELEASE模式编译程序,而非Visual Studio IDE集成开发环境,并在命令行状态下执行程序。没有对编译过程进行任何优化。
本文的测试由四个部分组成。其中包括用著名的埃拉托色尼过滤算法(Sieves of Eratosthenes)进行的测试及其它的单项测试,单项测试主要的考察.NET框架中特定项目的性能:
.NET框架的一个问题是程序的启动时间。因为.NET框架运行在Win32之上,因此要启动一个.NET框架程序需要额外的启动时间开销。
Java、C#线程模型分析对比[05-21]
C++语法游戏 : 模仿C#的 using(..[05-21]
使用c#+(datagrid控件)编辑xml文..[05-21]
C#学习笔记[05-21]
深入C#(一)[05-21]
C++、Java/C#之比较[05-21]
C++编程人员容易犯的10个C#错..[05-21]
在C#中如何支持Foreach[05-21]
<b>从Java/J2EE到C#的自动..[05-21]
<b>用C#创建COM对象</b..[05-21]
关于杠杆长度变化的问题(C问题)[05-21]
利用SharpZipLib实现实时zip压缩..[05-21]
简单分析用SPI实现防火墙[05-21]
简单分析用SPI实现防火墙[05-21]
WIN32用户界面设计基础之Cursor篇[05-21]
WIN32用户界面设计基础之Cursor篇[05-21]
程序员手记:简析Java RMI 与 .N..[05-21]
智力游戏九连环的算法[05-21]
一个IE浏览器Explorer Bar的例子[05-21]
如何用C++编程获得某台机器的IP地..[05-21]