⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csdn_文档中心_再谈vc++ vs delphi (续).htm

📁 csdn10年中间经典帖子
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0052)http://www.csdn.net/develop/Read_Article.asp?id=1743 -->
<!--内容开始//--><HTML><HEAD><TITLE>CSDN_文档中心_再谈VC++ vs Delphi (续)</TITLE>
<META content="MSHTML 5.00.3315.2870" name=GENERATOR>
<META content="text/html; charset=gb2312" http-equiv=Content-Type><LINK 
href="CSDN_文档中心_再谈VC++ vs Delphi (续).files/csdn.css" rel=stylesheet></HEAD>
<BODY bgColor=#ffffff leftMargin=0 topMargin=0 marginheight="0" marginwidth="0">
<DIV align=center>
<STYLE>.title0 {
	COLOR: #ffffff; FONT-FAMILY: arial; FONT-SIZE: 17px; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
A.title2:link {
	COLOR: #000000; TEXT-DECORATION: none
}
A.title2:visited {
	COLOR: #000000; TEXT-DECORATION: none
}
A.title2:active {
	COLOR: #ff0000; TEXT-DECORATION: none
}
A.title2:hover {
	COLOR: #ff0000; TEXT-DECORATION: none
}
</STYLE>

<SCRIPT language=JavaScript>
<!--
function submitlog(sign)
{
	var types=document.alogon.type.options[document.alogon.type.selectedIndex].value;				
	if (document.alogon.name.value!="" && document.alogon.pass.value!="")
	{
		if (types!="1")
			document.alogon.action="http://www.csdn.net/member/logon.asp";
		else
			document.alogon.action="http://expert.csdn.net/member/logon.asp";
		if(sign)
			document.alogon.submit();
		//return true;
	}
	else
	{
		if (document.alogon.name.value=="")
			alert("请输入用户名!");
		if (document.alogon.pass.value=="")
			alert("请输入密码");
		return false;
	}
	return true;
}
function GetMyPass()
{
	if (document.alogon.name.value!="")
	{
		document.alogon.action="http://www.csdn.net/member/getpass.asp";
		document.alogon.submit();
	}
	else
	{
		alert("请在姓名输入框里输入用户名或注册EMAIL!");
	}	
}
// -->
</SCRIPT>

<TABLE border=0 cellPadding=0 cellSpacing=0 width=770>
  <TBODY>
  <TR>
    <TD bgColor=#004d99 height=25 width=20></TD>
    <TD bgColor=#004d99>&nbsp;&nbsp; <A 
      href="http://www.csdn.net/member/login.asp"><FONT color=#ffff33>登 
      录..</FONT></A> &nbsp;&nbsp; <A href="http://www.csdn.net/member/zc.asp" 
      target=_blank><FONT color=#ffff33>[注 册]</FONT></A> &nbsp;&nbsp; <A 
      href="http://www.csdn.net/member/login.asp"><FONT 
      color=#ffff33>忘记密码</FONT> </A>&nbsp;&nbsp; <A 
      href="http://www.csdn.net/member/logonout.asp"><FONT 
      color=#ffff33>注销登录</FONT> </A></TD>
    <TD align=right bgColor=#990000 width=20><IMG height=25 
      src="CSDN_文档中心_再谈VC++ vs Delphi (续).files/top_1.gif" width=20></TD>
    <FORM action=http://www.csdn.net/search_ok.asp method=post target=_blank>
    <TD align=right bgColor=#009999 width=250><FONT color=#ffffff><FONT 
      color=#ffffff><INPUT class=FormText_1 name=search size=15> <SELECT 
      class=FormText_1 name=type> <OPTION selected value=1>新闻标题</OPTION> 
        <OPTION value=2>软件名称</OPTION> <OPTION value=3>商品名称</OPTION> <OPTION 
        value=4>文档标题</OPTION> <OPTION value=6>职位名称</OPTION></SELECT> </FONT><INPUT class=td3 name=Submit type=submit value="搜 索">&nbsp; 
    </FONT></TD></FORM></TR></TBODY></TABLE>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=770>
  <TBODY>
  <TR>
    <TD align=middle height=70 width=150><IMG height=60 
      src="CSDN_文档中心_再谈VC++ vs Delphi (续).files/csdn.gif" width=120></TD>
    <TD align=middle width=470>
      <SCRIPT language=javascript>
	var rand = Math.random().toString(); 
	var ordval = parseInt(rand.substring(2,4)); 
	function Showad(width)
	{
		if(width=='468')
		{
				document.write("<a href='http://www.dearbook.com.cn/' target='_blank'><OBJECT classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' WIDTH=468 HEIGHT=60><PARAM NAME=movie VALUE='/adv//468x60.swf'> <PARAM NAME=quality VALUE=high> <EMBED src='/adv//468x60.swf' quality=high border=0 WIDTH=468 HEIGHT=60 TYPE='application/x-shockwave-flash' PLUGINSPAGE='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash'></EMBED></OBJECT></a>");
				return;
		}
		if(width=='120')
		{
				document.write("<a href='http://www.csdn.net/csdn/csdnClick.aspx?ad=Oracle-button1&adurl&adurl=http://www.oracle.com/global/cn/documentation/10g/index.html?content.html' target='_blank'><img src='/adv/develop/grid_computing_120x60_text1.gif' width=120 HEIGHT=60 border=0></a>");
				return;
		}
		return;
	}
Showad('468')</SCRIPT>
    </TD>
    <TD align=middle width=150>
      <SCRIPT>Showad('120')</SCRIPT>
    </TD></TR></TBODY></TABLE>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=770>
  <TBODY>
  <TR>
    <TD align=middle bgColor=#000000 colSpan=2 height=1 width=770></TD></TR>
  <TR>
    <TD align=middle bgColor=#004d99 height=28 width=150><FONT 
      class=title0>csdn.net</FONT></TD>
    <TD align=middle width=620>
      <SCRIPT 
src="CSDN_文档中心_再谈VC++ vs Delphi (续).files/navigation1.js"></SCRIPT>
    </TD></TR>
  <TR>
    <TD align=middle bgColor=#000000 colSpan=2 height=1 
  width=770></TD></TR></TBODY></TABLE>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=770>
  <TBODY>
  <TR>
    <TD bgColor=#f3f9fc height=23 width=10></TD>
    <TD bgColor=#f3f9fc>
      <MARQUEE onmouseout=this.start() onmouseover=this.stop() scrollAmount=5 
      scrollDelay=80>
      <SCRIPT src="CSDN_文档中心_再谈VC++ vs Delphi (续).files/marquee.htm"></SCRIPT>
      </MARQUEE></TD>
    <TD align=right bgColor=#f3f9fc width=101>
      <SCRIPT>document.write("<img src=http://count.csdn.net/count/pageview1.asp?columnid=4&itemid=11 border=0 width=0 height=0>");</SCRIPT>
      <B>
      <SCRIPT language=JavaScript>
			<!--
			document.ns = navigator.appName == "Netscape"
			tmpDate = new Date();
			date = tmpDate.getDate();
			month= tmpDate.getMonth() + 1 ; 
			if(document.ns)
			{
				year1=tmpDate.getYear()
				year= year1.toString().substr(1,2);
			}
			else
				year= tmpDate.getYear();
			
			document.write(year);
			document.write(".");
			document.write(month);
			document.write(".");
			document.write(date);
			// -->
			</SCRIPT>
      </B>&nbsp;&nbsp;</TD></TR>
  <TR bgColor=#999999>
    <TD colSpan=3 height=1></TD></TR></TBODY></TABLE>
<TABLE border=0 width=770>
  <TBODY>
  <TR>
    <TD align=middle bgColor=#fafafa class=td1 vAlign=top width=150><BR>
      <SCRIPT src="CSDN_文档中心_再谈VC++ vs Delphi (续).files/microsoft.js"></SCRIPT>
    </TD>
    <TD align=middle width=620>
      <TABLE bgColor=#eeeeee border=0 cellPadding=0 cellSpacing=0 width=600>
        <TBODY>
        <TR bgColor=#ffffff>
          <TD align=middle height=10 width=50></TD>
          <TD align=right><A href="http://www.csdn.net/">CSDN</A> - <A 
            href="http://www.csdn.net/develop/">文档中心</A> - <FONT 
            color=#003399>Visual C++</FONT>&nbsp;&nbsp;&nbsp;&nbsp; </TD></TR>
        <TR>
          <TD align=middle height=5></TD>
          <TD align=middle width=500></TD></TR>
        <TR>
          <TD align=middle bgColor=#003399 height=10><FONT 
            color=#ffffff>标题</FONT></TD>
          <TD><B>&nbsp;&nbsp;&nbsp;&nbsp;再谈VC++ vs Delphi 
            (续)</B>&nbsp;&nbsp;&nbsp;&nbsp;hwz(原作) </TD></TR>
        <TR>
          <TD align=middle height=5></TD>
          <TD align=middle width=500></TD></TR>
        <TR>
          <TD align=middle bgColor=#003399><FONT color=#ffffff>关键字</FONT></TD>
          <TD width=500>&nbsp;&nbsp;&nbsp;&nbsp;再谈VC++ vs Delphi (续)</TD></TR>
        <TR>
          <TD align=middle height=5></TD>
          <TD align=middle width=500></TD></TR></TBODY></TABLE><!--文章说明信息结束//-->
      <TABLE border=0 width=600>
        <TBODY>
        <TR>
          <TD align=left><BR>
            <P>(本来已一次贴上来了,却发现后半部分不显示,也许太长了)</P><PRE>(10) 产品质量/稳定性
有文章称“VC++的质量好,稳定性高”。真的是这样吗?Visual Studio的Service Pack
不是都出到4了吗?什么是Service Pack?主要不就是Bug Fix + Patch吗?!Borland
的工具也并不完美,Delphi 3的VCL中确实存在“内存漏洞”,会导致用D3开发的程序
有时(并不总是)退出后不能释放分配的内存。VC++的问题也不少:IE是用VC++写的吧,
上网时多启动几个,开开关关,最后全关闭,看看你的系统资源剩下多少了?还经常导
致“General Protection Error”。Ultra Edit是用VC++写的吧,也有同样的问题。其
实说到底,程序质量好不好,运行稳定不稳定,主要取决于开发者的水平/责任心。比
如说Tomb Raider系列和Quake系列游戏同是用VC++开发的,但画面质量和运行速度显然
Quake系列更胜一筹。象美国航空航天局(NASA),俄罗斯宇航局(RSA),美洲银行(Bank
of America,资产超过5000亿美元的大银行),其他诸如American Airlines,AT&amp;T,
BMW,Compaq,BBC Television,British Telecom等大型机构/公司都在用Delphi开发
复杂的,企业级(可笑的是,有人居然称“用VC开发企业级的桌面应用”,殊不知企业
级应用和桌面应用是相对而言的)的应用系统(在<A href="http://community.borland.com/">http://community.borland.com/</A>
(Borland社团站点)上有关于用Delphi和C++ Builder开发的产品介绍),如果有人还要
说“...稳定和可靠是硬道理,只好忍痛割爱了”,那他恐怕只好自制开发工具(外带操
作系统)了。:-)
(PS:关于Delphi与某些显卡驱动冲突的问题,是由于某些显卡(如S3 Virge GX)的老版
本驱动程序不能正确处理Windows公用控制中的ImageList的绘制方法造成的,在这种情
况下所有在ImageList中使用多个图象的程序都会有问题)
(PS:至于“一看到很多优秀的共享软件冒出具有Delphi特色的错误异常就感到悲哀”,
建议此人先搞清楚你看到的“错误异常”消息是这些软件本身出错呢,还是运行时的异
常处理消息(比如“没有找到指定文件”或“索引超出范围”之类)再说。Delphi中有完
善的异常处理,所以很多程序员不再写错误处理,而放手让编译器去处理。我认为这不
是一个好习惯,至少弹出的消息对话框可能与你的程序所用的语言/风格不一致。让人
家误会了不是?:-)

(11) 帮助/文档
VC++的帮助和文档确实要比Delphi/C++ Builder的丰富一些。不过这不应当包括MSDN,
因为MSDN是一套独立的产品,并不是专门给VC++准备的,况且其中包括了相当多的
Windows技术资料。作为一名程序员,不管用什么开发工具,可以(也应当)有一套MSDN。
Windows数据结构/APIs是用C风格描述的这一点可能对Delphi程序员来说略有不便,不
过Delphi中已经包括了大多数转换;另外,如果一个程序员连转换.H文件这么简单的工
作都做不了的话,他(她)可能也做不了什么象样的开发。Internet上的一个志愿者组织
(<A href="http://www.delphi-jedi.org/">www.delphi-jedi.org/</A>)在这方面也做了大量工作,在他们的站点上有几乎全部有用的
C/C++库.H的Object Pascal翻译。
(PS:Delphi/C++ Builder程序员为什么不可以买一套MSDN呢?毕竟我们还在用M$的操
作系统,总不至于连Windows技术资料都不要了吧)
(PS:从MSDN看M$
MSDN中的技术资料主要是以Compiled HTML(.chm)格式存放的,但M$把全部.chm放在
Disc #1,而把索引文件(.chi)单独放在Disc #2。这样一来就无法从光盘上直接看这些
文件。要么安装,要么手工把相应的.chm和.chi拷贝到一起。我看不有什么技术上的理
由(谁知道请告诉我)不把一半.chm和.chi放在一张盘,而另一半放在第二张盘。这至少
反映出M$内部某些人的阴暗心理)

(12) 国际化支持
VC++中已经包括了十多种语言的RTL资源,Delphi中需要自己做资源本地化。虽然
Franch,German之类的版本中也包括English资源。:-&lt;

(13) 应用领域
VC++在Windows设备驱动开发(毕竟是M$ Windows)和某些桌面应用(比如游戏)开发中用
得较多。Delphi更多应用在数据库/多层结构,多媒体和Internet开发等方面。
(PS:VC++在游戏开发中用得较多我看主要是价格因素,游戏使用专用界面,通常不涉
及数据库和Internet(即使Internet Play也不过是简单的TCP连接,并且DirectPlay中
已包括此项功能),昂贵的Delphi和C++ Builder显示不出优势。只需要$79的VC++标准
版,DirectX SDK(可免费下栽),OpenGL文档(也是免费的),至多再加一套MSDN即可。
比如Quake,全是手写的C代码,连C++特性都很少用到。Borland也认识到了这一问题,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -