Visual C++与DelphiC++Builder之比较及未来的发展前景之我见
C++VCVB三种编程语言各个的优点和缺点。

C++VCVB三种编程语言各个的优点和缺点。
C++\VC\VB 三种编程语言各个的优点和缺点。
1.C++是从C发展而来,继承了C的特性又加了类(既面向对象)的高级语言特点;2.而VC和VB是编译器并不是语言;3.C语言:结构化程序,编程语言中比较早,而且方便使用的语言;4.C++:在C上发展而来,支持多种范式变成,其中包括:结构化,抽象数据类型模型,面向对象编程,泛型编程;5.VC:一个编程的工具而已,适合用它开发windows程序;6.VB:这个采用VB语言的一个编程工具,图像处理方面有优势;7.JAVA:也是多范式编程语言,但表达能力比C++弱的多,主打跨平台。
Delphi这种编程语言与别的编程语言的优点和缺点,以及他在编程语言中的地位优点:编程太苦太难了,啥办法能轻松写意一些?"这里,给大家介绍一个优秀编程软件―Delphi。
Delphi是Borland公司推出的可视化开发平台Delphi的妙处在于它易学易用而又功能强大,在许多地方无论是初学编程者还是专业程序员都钟情于它,因为它使编程工作变得轻松愉快、充满趣味。
只要你会摆弄鼠标,就能用Delphi来创作自己的应用程序。
Delphi的代码是用Pascal语言编写的。
但初学Delphi并不需要太多Pascal语言的语法知识。
因为在学习过程中,可以把"帮助"中提供的例子修修补补,实现自己期望的功能。
缺点:Delphi几乎可以说是完美的,只是Pascal语言的过于严谨让人感觉有点烦地位:据说是当今世界上最优秀的W indows开发工具它可以创建任何一个Windows应用程序。
求问xbox one和PS4各个的优点和缺点价格一样的PS4优点就是性能强一些,亚洲区玩家数量很多,目前出的独占质量非常高,还有很多游戏公司重点跟索尼合作而带来的福利,而且游戏折扣较为频繁,均价便宜一些缺点的话,PSN会员要贵一些,而且每个月送的游戏质量比起XBOX ONE差一点手柄可能不是那么的给力,较XB1来说,但也已经非常舒服了XBOX 优点首要就是体感了,非常给力而且有独自的EA ACCESS会员,一年花一个游戏的钱可以玩EA 十几个大作,战地4啊硬仗啊泰坦陨落等等,新作发售半年也会登录会员XBOX手柄总体感觉比PS4舒服些,尤其是FPS游戏网络上微软也要好一点缺点的话,XBOX游戏画质比PS4弱那么一点,当然除非死死盯着找差别不然根本是没什么感觉的,亚洲区微软玩家少些,联机搜起来就没索尼那么快机器别买国行,受限很多不给力请问个位大哥C\C++\VC\VB\JANA编程有什么不同,作为软件开发的初学者因该学哪种编程语言c:结构化程序c++:支持多种范式变成,其中包括:结构化,抽象数据类型模型,面向对象编程,泛型编程.VC:他是个编程的工具而已,适合用它开发windows程序.VB:这个采用VB语言的一个编程工具.JAVA:也是多范式编程语言,但表达能力比C++弱的多.它鼓吹什么跨平台...我晕...struts1与struts2的各个的优点和缺点.谁能说下类:• Struts1要求Action类继承一个抽象基类。
Visual Studio和Eclipse:哪种更适合开发

Visual Studio和Eclipse:哪种更适合开发在软件开发领域,Visual Studio和Eclipse是两种最流行的集成开发环境(IDE)。
由于它们都具有许多相似的特性和功能,因此对于开发人员来说选择其中之一可能会很困难。
在这篇文章中,我们将尝试比较Visual Studio和Eclipse,以帮助您决定哪种更适合您的开发需求。
关于Visual StudioVisual Studio是由微软推出的一款集成开发环境,最初是为微软的.NET框架而设计。
它提供了一系列丰富的功能和工具,使开发人员可以更加高效地开发软件应用,包括Web应用程序、桌面应用程序、移动应用程序等。
Visual Studio具有许多功能和特性,例如代码自动完成、调试器、内存分析器等,它是微软生态系统中必不可少的开发工具。
优点1.完善且易于使用的IDEVisual Studio提供了一个非常完善且易于使用的IDE,可以帮助开发人员更快地编写代码。
IDE是非常易于个性化设置的,并且这使得开发人员能够更好地适应和定制IDE,使其符合其开发工作流程。
2.适用于各种项目类型Visual Studio不仅适用于.NET应用程序的开发,还适用于许多其他项目类型的开发。
例如,它可以用于开发移动应用程序(Android 和iOS),Web应用程序,桌面应用程序甚至是游戏。
这种多样化使得Visual Studio成为众多开发人员的首选开发环境。
3.高级调试能力Visual Studio是具有高级调试能力的开发环境之一。
开发人员可以使用Visual Studio内置的调试器来轻松识别代码问题和错误,同时通过内存分析器获得更全面的视图。
此外,Visual Studio还提供了即时窗口功能,使开发人员可以快速识别问题并立即解决。
4.集成了Azure云服务Visual Studio完全集成了Azure云服务。
这意味着开发人员可以直接在Visual Studio IDE中访问和管理Azure云服务,从而使整个应用程序开发、管理和部署过程更加容易和高效。
Visual C++与Delphi之比较

Visual C++与Delphi之比较"Visual C++与Delphi之比较"最近在CSDN的论坛上的讨论非常火热,本文将以一个程序员的角度,从技术水平、功能、性能、易用性、稳定性、发展历程和前景等方面,以Visual C++6和Delphi5为代表,尽可能客观地比较介绍Visual C++和Delphi这两大主流开发工具的优缺点,其中将涉及到语言、应用框架、控件、编译和连接、集成界面、调试、COM、数据库开发等。
本文还将对如何选择使用这两个开发工具提出一些建议。
值得一提的是,由于C++Builder与Delphi同为Inprise公司产品,它们除了使用的语言不同,其余特性几乎都相同。
因此本文对C++Builder程序员和学习者也有参考价值。
语言:存在即是合理首先声明常被混淆的一点:VC和Delphi本身不是语言,而是开发平台。
它们所用的语言分别是略作扩展的C/C++和Object Pascal。
我在网上常看到有人问应该学C/C++还是VC,这个问题很好回答:如果你学VC你就必须得学C/C++,或者说你学会了VC也就学会了C/C++了。
言归正传,我们来比较一下C++和Object Pascal的优缺点。
有人认为Object Pascal是"玩具语言",C++才是"专业语言",这是不对的。
单从语言本身看,Object Pascal与C++属同一重量级。
它们都是完全支持面向对象的语言,都扎根于"历史悠久"的面向过程的语言。
C++是由C发展而来的,Object Pascal由Pascal进化而来。
它们都有很强的灵活性,都有自己的特长和不足。
比如说,Object Pascal不支持多重继承、模板、操作符重载、内联函数定义、预处理、宏、全局静态类变量、嵌套类定义,等等,而这些都是C++支持的。
但同样地C++也不支持Object Pascal的虚构造函数、过程嵌套、内置集合类型、内置字符串类型、"finally"构造等等,在RTTI方面Object Pascal也比C++做得好。
它的主要竞争对象Microsoft开发的Visual

CSDN独家报道】1998年Borland公司推出的C++Builder这一当年全新的32位Windows开发工具,继承了Delphi使用简便、功能强大、效率高的特点,并且结合了C++语言几乎所有优点。
所以当年开始C++Builder迅速风靡。
它的主要竞争对象——Microsoft开发的Visual C++也是不甘示弱,迅速出击,突出了Visual可视化强的特点,加上Platform、SDK部分以及Microsoft产品与Windows的天然默契,逐渐成为了技术人员的首选。
随着Visual C++版本的不段升级,以及功能、风格等诸多原因,BCB渐现颓势,许多Builder使用者也开始转而使用Visual了。
相信这一段的历史给很多人都留下了极为深刻的印象。
在2007年CSDN、《程序员》主办的开发者大调查中,我们也详细的分析了C++方面大家主要使用什么IDE 的状况,在目前已收到的15000多份有效问卷中,发现主要使用VS系列的占了75%,BorlandC++Builder/CBuilderX只占6%,Eclipse CDT占6%,DevC++占2%,其他IDE占3%,不使用IDE 占8%。
就这一调查数据,我们不难看出,VS系列的优势地位还是相当的明显,已经远远的将C++Builder落在了后面。
对于.NET开发,Visual C++ 2005有了一套新的语法;新的优化技术,可使程序的速度最高提高30%;同时新的编译模式,可保证在Microsoft .NET Framework之上生成完全遵从CLI(Common Language Infrastructure)的可验证代码;新的interop模式,可提供本地与托管代码的无缝融合。
相对于前两个版本,新编译器还包括了一个增强版本的缓冲区安全检查选项,而且对C++程序普遍使用的库,也有新的注重安全的版本。
Visual C++ 2005对基于Intel Itanium和AMD64的64位平台,提供了对OpenMP标准的支持,并且修正了一些混合DLL加载的问题,对Double P/Invoke的性能问题,提供了自动运行时消除。
对比MFC Winform WPF

对比MFC ,Winform ,WPFMFC 生成本机代码,自然是很快。
可是,消息循环,减缓了界面显示速度。
winform 封装了win32 的api,多次进行P/invoke 操作(大部分使用p/invoke操作封装),速度慢。
wpf是一种新的模型,不再使用win32 模型,自己新建模型,使用dx 作为新的显示技术,直接访问驱动程序,加快了运行速度,可是,这种模型,需要支持dx 9 的显卡,硬件要求高(你还能找到现代机器不支持dx9 的吗?)开发效率上,MFC<WPF<winform尽管MFC开发界面执行效率高但是开发效率低,作为现在的项目开发来说时间跟开发效率往往能决定项目的成败,所以除非有特别的需求,否则都回尽量避免用mfc来做开发,MFC 只是一个弱封装器。
开发成本,MFC〉wpf〉winform用MFC开发成本太高,对开发者能力要求更高,作为客服当然希望开发的费用越少越好,开发者当然希望钱赚得越多越好,这样一比,这也是MFC没落的一个很大的原因。
界面执行效率上,MFC==WPF〉winform随着计算机硬件的性能提高,多核cpu的普及,它们的差距会越来越小。
开发灵活性上:wpf〉MFC〉winform美观上:Wpf〉winform〉MFC这一项中MFC下要开发出一个华丽的ui极其困难,也许你可以说你可以用控件,但是商业开发控件是要收费的!!Wpf很容易就可以做出vista那样的ui特效。
mfc要写出这种效果不知要写到何年何月。
这样一来MFC存在的价值就更低了。
效率和美观不如Wpf,开发效率又不如winform,预计不出10年,随着vista取代xp,mfc将会退出历史舞台。
内存使用上:wpf〉winform〉MFC随着计算机硬件的性能提高wpf这个缺点会被忽略。
使用范围:wpf〉MFC==winform有以上可知:WPF 大有取代winform 和MFC之势,从未来net的发展来看,MFC以后只会变成一种经典,作为一种技术来供开发者学习,winform和WPF两者会并存发展,但最终都会被WPF取代,最终实现桌面应用程序和浏览器应用程序的统一。
VC与Delphi及C++之间的比较

VC与Delphi及C++之间的比较
李滨
【期刊名称】《机械职业教育》
【年(卷),期】2004(000)009
【摘要】由于Delphi与C++Builder同为Inprise公司产品,共享集成开发界面(IDE),而且使用同一套VCL框架,它们带的调试器、PVCS/TeamSource团队开发支持、数据库引擎及企业版中集成的其他高级功能等都是相同的,所以本文将其与C++Builder归入“同一阵线”。
我在网上见到一些Delphi程序员认为【总页数】2页(P26,30)
【作者】李滨
【作者单位】南京信息职业技术学院
【正文语种】中文
【中图分类】G4
【相关文献】
1.评析VC++与Delphi及C++Builder之间的差异 [J], 刘哲
2.在Delphi与C++之间实现函数和对象的共享 [J], 叶茂祯
3.Delphi与C++之间实现函数与对象共享 [J], 姜焕军;王聪华
4.谈Visual C++与Delphi/C++Builder比较和将来的发展 [J], 冯川放;王静婧
5.在Delphi与C++之间实现函数与对象共享 [J], 朱堂全
因版权原因,仅展示原文概要,查看原文内容请购买。
数据库开发工具
1.4 C++
是基于MFC库的可视化的开发工具,从总体上说它是一个功能强大但是不便使用的一种工具。它在网络开发和多媒体开发都具有不俗的表现,帮助系统也做得非常不错(Microsoft 在细节方面的处理往往都让人觉得亲切),但是虽然是使用C++作为基本语言,但是它在面向对象特性上却不够好,主要是为了兼容C的程序,结果顾此失彼;在组件支持上也不太好,虽然说除了支持COM,ActiveX外还支持CORBA,但是没有任何IDE支持,是所有C编译器的功能, 需要CORBA中间件支持;最大的问题是开发效率也不高。
1.3 C++Builder/Delphi
它们都是基于VCL库的可视化开发工具,它们在组件技术的支持、数据库支持、系统底层开发支持、网络开发支持、面向对象特性等各方面都有相当不错的表现,并且学习使用较为容易,充分提现了所见即所得的可视化开发方法,开发效率高。由于两者都是Borland 公司的产品,自然继承了该公司一贯以来的优良传统:代码执行效率高。但是,它们并不是毫无缺点,它们所作的最大不足之处就是他们的帮助系统在众多的编程工具中是属于比较差的。C++Builder 的VCL库是基于Object pascal(面向对象pascal),使得C++Builder在程序的调试执行上都面向落后于其他编程工具。而Delphi则是它的语言不够广泛,开发系统软件功能不足两个比较大的缺点。
数据库开发工具
随着计算机技术不断发展,各种数据库编程工具也随着发展,使当今的大多数程序开发人员可以摆脱枯燥无味的用计算机指令或汇编语言开发软件,而是利用一系列高效的、具有良好可视化的编程工具去开发各种数据库软件,从而达到事半功倍的效果,但是现在市面上的数据库编程工具门类众多。
不同编程语言对计算机应用软件开发的影响
不同编程语言对计算机应用软件开发的影响目前,计算机业内流行的软件编程语言有:C#、Java、PHP、C++、VisualBasic、Delphi、Power Builder等。
编程的目的主要是为了解决问题,解放现实的劳动力,而现实的问题都是可以用语言来描述的,将问题用计算机语言来实现,需要编写计算机开发程序。
主要的途径是对现实问题进行分析,用合理的数学模型来表达,然后通过计算机程序语言来实现功能,例如:R、G、B3色份量来各表示一种颜色,对于颜色的处理被转化为对 R、G、B3个整数的处理。
只要改变这3个整数,就可以将其改变成另外一种颜色。
1.计算机常用的编程语言C语言:该语言应用广泛,是所有计算机语言里最常用的编程语言,从开始出现到现在已经有40年的历史,C语言具有很多优点,如:语法简洁、运算符丰富、数据结构类型丰富、代码和数据分离的结构化、语法要求不严格、功能强大等。
C语言是具有兼容能力强的程序语言,移植起来非常容易,利用 C语言为某种计算机写的软件可以用到另一种机器上去。
如:如果为苹果机写的一个程序能够方便地改为可以在IBM PC上运行的程序。
C语言的主要结构成分是函数C的独立子程序,编写的程序语言比较容易维护,并且容易实现。
C++:该语言是C语言的升级,它几乎包含了C语言的所有功能,在C语言的广泛引用前提下,C++也应用的非常广泛,可以说任何领域都可以使用,包括各种操作平台,这也决定了C++是一种最难学的编程语言,因为,它强大的功能背景下,使用起来非常的灵活多样。
实践证明,如果掌握了C++,再学习其他编程语言的时候就会非常容易,因为它贯穿了从硬件到对象的各个环节,学完该语言以后就会对计算机语言有个深刻的认识。
Jav和C#:Java和C#都是出现在 C语言之后,以面向对象为主的语言,Java 语言是在充分吸收了C++的优点,摒弃了C++的一些缺点的基础上诞生的,并且形成了具有自身特色的优势,而C#则是在Java 语言之后出现的,它更多地借鉴了Java的优点,同时增加了一些自己的特点。
程序开发目前主流开发技术的分析和总结
程序开发:目前主流开发技术的分析和总结主流的程序设计语言:C++、Delphi(ObjectPascal)、Java、C#桌面应用程序框架:MFC、VCL、QT、JavaAWTSWING、.Net企业应用程序框架:WindowsDNA(ASP、COM、COM+)、J2EE、.NetFramework开发工具:VisualBasic、Delphi、VisualC++、C++Builder、VisualC#*程序设计语言:C++Delphi(本来应该是ObjectPascal,但为了简单,我就语言和工具混为一谈吧)JavaC#(虽然他刚刚推出,但因为微软为之倾注了大量心血,一定会成为一种重要的开发语言)*桌面应用程序框架:MFCVCL*企业应用程序框架:*COM技术:我单独提出这项技术,是因为它无法简单的被视为语言、桌面应用程序框架或企业应用程序框架,它与这些都有关系。
2.1 程序设计语言2.1.1 C++语言的演进最初要从二进制代码和汇编说起,但那太遥远了。
我们就从面向过程的语言说起吧(包括BasicCFortranPascal)。
这种面向过程的高级语言终于把计算机带入了寻常的应用领域。
其中的C语言因为它的简单和灵活造就了Unix和Windows这样的伟大的软件。
面向对象的语言是计算机语言的一个合乎逻辑的进化,因为在没有过多的影响效率、简单性的前提下提供了一种更好的组织数据的方法,可使程序更容易理解,更容易管理--这一点可能会引出不同意见,但事实胜于雄辩,C++终于让C语言的领地越来越小,当今还活着的计算机语言或多或少的都具备面向对象的特征,所以这一点并不会引起太多困惑。
C++的成功很大程度要归因于C,C++成为它今天的样子是合乎逻辑的产物。
因为在面向过程的时代,C几乎已经统一天下了。
今天的语言象JavaC#都从C借鉴了很多东西,C#本来的意思就是C++++。
其实C++曾经很有理由统一面向对象程序设计语言的天下来着,但可惜的是,C++太复杂了。
编程语言的发展趋势及未来需求
编程语言的发展趋势及未来需求编程语言是计算机科学领域中最为核心的概念之一。
编程语言如同一种沟通工具,它使得计算机能够读懂人类的思考,进而实现各种功能和应用。
现在,我们已经看到了许多不同的编程语言,在未来,仍然需要不断地发展和创新。
本文将从历史背景和当前近况入手,探讨编程语言的发展趋势及未来需求。
历史背景编程语言的发展可以追溯到1940年代初期。
Atanasoff-Berry计算机是最早的电子计算机之一,成功地应用了二进制和算术运算等概念。
不过,计算机编程仍然需要使用机器语言,即二进制指令。
这种方式非常繁琐和难以维护,使得编程内部只有少数专业人士能够胜任。
随后,为了让编程更便捷和高效,人们开始探索新的编程语言。
Fortran是第一种高级编程语言,由IBM团队于1950年代初期开发出来。
Fortran将自然语言和数学表达式结合起来,进一步简化了编程过程。
Fortran的出现引领了编程语言的飞速发展。
COBOL (商业用途编程语言)和BASIC(初学者编程语言)等新型编程语言也随之诞生。
当前近况进入21世纪,编程语言的应用已经非常广泛。
其中,最热门的语言包括Java、Python、C语言和C++等。
每一种语言都有着自己的特点和优势,比如Java适合开发跨平台的应用,Python拥有简单易用的语法和丰富的库支持, C语言和C++则具有强大的性能和扩展性。
同时,新型编程语言也在不断涌现。
比如,Swift是由苹果公司研发的面向iOS开发的编程语言,网页端的JavaScript也不断完善和升级。
新型编程语言的发展,给开发者提供了更多选择,也为未来的应用提供了更多可能。
未来需求如今,我们已经进入互联网时代,移动应用、大数据、人工智能等新型技术已经成为各行各业的焦点。
这些新技术同样需要不同类型的编程语言进行支持和开发。
因此,未来编程语言的需求将会更加多样化和个性化。
其中,大数据领域的Spark框架和Scala语言将有着广泛的应用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Visual C++与Delphi/C++Builder之比较及未来的发展前景之我见由于Delphi与C++Builder同为Inprise公司产品,共享集成开发界面(IDE),而且使用同一套VCL框架(这一点最关键),它们带的调试器、PVCS/TeamSource团队开发支持、数据库引擎及企业版中集成的其它高级功能等都是相同的,所以本文将其与C++Build er归入"同一阵线"。
我在网上见到一些Delphi程序员认为C++Builder与VC比较接近,这是个误解。
事实上,Delphi和C++Builder除了使用的语言不同,其余几乎都相同。
为了避免话题转移到C++语言与Object Pascal语言(即Delphi所用的语言)的比较,下文主要对比分析Visual C++与C++Builder。
首先,从它们的应用程序框架(Application Frame,有时也称为对象框架)进行比较。
Visual C++采用的框架是MFC。
MFC不仅仅是人们通常理解的一个类库。
(同样,Del phi和C++Builder使用的VCL的概念也不仅仅是一个控件库。
)你如果选择了MFC,也就选择了一种程序结构,一种编程风格。
MFC早在Windows 3.x的时代就出现了,那时的Visu al C++还是16位的。
经过这些年的不断补充和完善,MFC已经十分成熟。
但由于原型出现得比较早,MFC相比于VCL落后了一个时代。
尽管微软对MFC的更新没有停止,我也经常读到持"只要Windows不过时,MFC就不会过时"之类观点的文章,但就象Inprise(原Borl and)的OWL框架的淡出一样,MFC的淡出也是早晚的事。
如果MFC青春永驻,微软的开发人员也不会"私自"开发出基于ATL的WTL呀。
当然,WTL的地位不能和MFC比,它并不是微软官方支持的框架,封装的功能也相当有限。
但至少也反衬出了MFC存在的不足。
我以为,最能体现一个应用程序框架的先进性的是它的委托模型,即对Windows消息的封装机制。
(对Windows API的封装就不用说了吧。
大同小异,也没什么技术含量。
如果高兴,你也可以自己写一个类库来封装。
但对Windows消息驱动机制的封装就不是那么容易的了。
)最自然的封装方式是采用虚成员函数。
如果要响应某个消息就重载相应的虚函数。
但出乎我的意料,MFC采用的是"古老"的宏定义方法。
用宏定义方法的好处是省去了虚函数VTable的系统开销。
(由于Windows的消息种类很多,开销不算太小。
)不过带来的缺点就是映射不太直观。
好在较新版本VC带的ClassWizard可以自动生成消息映射代码,使用起来还是比较方便的。
但和VCL的委托模型相比,MFC的映射方法就显得太落后了。
而C++Builder对C++语言进行了扩展,以便引入组件、事件处理、属性等新特性。
由于功夫做在编译器级,生成的源代码就显得十分简洁。
但是由于扩展的非标准特性,使用VCL的C++Builder的源代码无法被其它编译器编译。
而MFC的功夫做在源代码级,虽然消息映射代码较为复杂且不直观,但兼容性非常好。
只要你有MFC库的源代码(随VC企业版的光盘提供),你的MFC程序理论上用任何符合ANSI标准的编译器均可编译通过。
C+ +Builder 3以上版本可以原封不动直接编译Visual C++程序,很多人认为这是C++Builder的兼容性好,实际上很大程度应归功于MFC的兼容性好。
微软辛辛苦苦用标准方法写M FC,却为对手制造了方便。
不知他们作何感想?而因为C++Builder对语言作了扩展,VC 不能编译C++Builder的程序。
看来在这方面VC要输给C++Builder了。
而且VCL所支持的组件、属性等都是MFC所缺乏的特性。
虽然VC也能支持组件,但要通过AppWizard先生成一个"包裹"类(wrapper),不如VCL来得简洁。
有很多人使用C++Builder就是冲着控件板上那一大堆组件来的,VC虽然能使用的组件也很多(也许不比C++Builder少),但由于不方便而对RAD程序员没有吸引力。
C++Builder的VCL比Visual C++的MFC先进的另一个特性是异常处理。
但令人啼笑皆非的是,它的异常处理代码有bug,有时会无端抛出异常。
不知道在最新的版本中有没有改正了。
而VC的框架MFC也不是一无是处。
经历了那么多年的发展和完善,MFC功能非常全面,而且十分稳定,bug很少。
其中你可能遇到的bug更少。
而且有第三方的专门工具帮助你避开这些bug。
如此规模的一个类库,能做到这一点不容易。
不要小看了这一点,很多专业程序员就是为这个选择VC的。
而C++Builder的VCL的bug就相对较多了,而且有些它自己带的示例程序都有错误。
看来Inprise还有很长的路要走。
再从它们的易用性比较。
VC有ClassWizard、SourceBrowser等一系列工具,还附带Visual SourceSafe、Visual Modeler等强大的工具,易用性非常好。
(VC自带建模工具Visual Modeler,也许说明了它才是工程级的开发平台,与C++Builder的定位不同。
)它所带的MSDN这部"开发者的百科全书"更是让你"没有找不到的,只有想不到的"。
而且它的AutoComplete之类小功能也比C++Builder要体贴。
C++Builder的新版本虽然也提供了这一功能,但它的提示要等好几秒才出来,有时你不经意间把鼠标停在某一处,也要等硬盘响好几秒,这可是在566Mhz的赛扬II上呀。
不要笑我琐碎,有时一个开发工具的成熟和易用,就是从这些小地方体现出来的。
C++Builder作为RAD工具,理应强调易用性。
但与VC相比还显出不成熟。
这是不应该的。
再来看看它们的可移植性。
Inprise正在开发C++Builder和Delphi的Linux版本,代号为Kylix。
也许通过Kylix,用VCL构架编写的Windows程序向Linux移植成为可能。
但这只是可能。
因为在目前Inprise的兼容性工作做得并不好。
C++Builder可以编译VC程序还要多谢微软使用标准方法写MFC,而它自己各个版本之间兼容性却不太好。
低版本的C ++Builder不能使用高版本的VCL组件(这还别去说它),而高版本的C++Builder竟然不能使用低版本的VCL组件。
真是岂有此理,我很少看见软件有不向下兼容的。
如果Windows 98不能运行95的程序,Windows 95不能运行3.x的程序,Win 3.x不能运行DOS程序,你还会用Windows吗?如果不是C++Builder的其它某些方面太出色,光是这个向下不兼容就足以让我抛弃它。
而且虽说通过捆绑编译器,C++Builder可以编译Delphi的Object Pascal代码,但C++Builder仍不能使用为Delphi开发的VCL组件。
所以一个组件有for D1/D 2/D3/D4/D5/C1/C3/C4/C5这些不同版本是常有的事,而且随着C++Builder版本的升级可能还会增加。
希望Inprise能先解决同门兄弟的兼容性问题。
而微软的VC就没有这类问题。
MFC1.0的程序也可以毫无障碍地在VC6.0下编译通过。
再来看看它们的前景吧。
实际上,技术的进步在很多时候是此消彼长的。
当初Bo rland的Turbo C和Borland C++几乎是唯一的选择。
微软的Quick C(现在还有人知道这个产品吗?)和Microsoft C/C++从来也没有成为过主流。
但Borland C++又流行了多少年呢?不久就被新崛起的Microsoft Visual C/C++压下去了。
现在的C++Builder又有后来居上的态势,如果稳定性再提高一些,bug再少一些,有希望成为主流。
但Inprise的总体实力不及微软,这也是无可争议的。
从C++Builder 5的Release Notes中的Known Issues部分,以及它们的帮助文档的规模和质量都可以看出。
(哪个同类产品的帮助文档能和MSDN比呢?)Inprise公司应从Netscape吸取教训,不要让C++Builder成为第二个Netsca pe Communicator。
(Communicator也是一度技术领先,甚至曾占据了大部分的浏览器市场,但似乎后劲不足,而且 6.0 PR1、2中bug多多,现在被IE压得抬不起头。
)C++Builder是Inprise的旗舰产品之一,前景应当还是比较乐观的,而且Inprise已经在向Linux进军了,而微软还迟迟没有动作,难道非要到Linux成燎原之势(或许已经成燎原之势了)才会奋起占领这个新兴市场?似乎他们对Linux的态度与几年前对互联网的兴起的反应迟缓有些相似。
但后来......唉,真希望Inprise不要步Netscape的后尘。
C++Builder是一个很有前途的开发工具。
遗憾的是,Inprise公司Delphi的创始人已经跳槽到微软去主持Visual J++项目了。
但愿对Inprise冲击不会太大。
微软的Visual C++的前景又怎样呢?Visual Studio 7.0不久就要推出了。
不知能不能在保持稳定性的同时在技术的先进性上赶上C++Builder。
另外,这一版本将加强网络开发的特性。
看来微软虽然被判解体,开发实力可是一点没打折扣。
就技术(主要指应用框架)来说,C++Builder目前领先于Visual C++。
但多多少少的不尽人意之处让我对Inprise"想说爱你不容易"。
而VC尽管发展到今日已十分完善,但MFC框架已是明日黄花了。
如果不使用MFC,目前又没有合适的替代品。
WFC是支持组件、属性和事件的,但那是Visual J++里边用的;ATL也很先进,但是用来进行COM/Activ eX开发的;基于ATL的WTL也不错,可惜是非官方作品,也未必比VCL先进。
微软最近提出了C#(读作C Sharp)语言方案,但那属于和Java同一类的东西。
看来是金无足赤啊。
根据你的需要做选择吧。
实际上Visual C++和C++Builder也不是单单竞争关系。
它们在许多领域并不重叠,甚至是互补的。
到底怎样取舍,要根据你的项目特性决定。
如果你开发系统底层的东西,需要极好的兼容性和稳定性,选Visual C++吧。
你可以只调用Window s的各种API,不用MFC。
如果你写传统的Windows桌面应用程序,Visual C++的MFC框架是"正统"的选择。