Ⅰ delphi编译器效率高到底是指什么
所谓delphi编译器效率高,一般指的是以下三方面:
1、编译连接时间短,这一点是其他任何编译器都无法相比的(一般来说,VC, VB编译过程所用的时间是Delphi的几倍),原因很简单:Pascal语法限制严格,用户必须规范地编码,省去了编译器的很多麻烦。
2、编译出的程序执行速度快,产生的代码长度短。这一点比VB强,但和VC基本一样,谁也没有优势。不过很多人有误解,以为Delphi类库庞大复杂,加一个控件就要把整个一个源文件全部加进来,代码长度太大,效率太差。其实真实情况是,拥有众多VCL控件类库,是Delphi的一个独特之处,VC的MFC库无法与之相比——MFC有的底层简单封装的类,VCL库都有,但VCL有的上层组件,MFC却根本没有。使用VCL上层应用控件后,代码长度的确比VC大,不过VC却没有这方面的选择,而VC所用的从底层一砖一瓦地编码的方式,Delphi完全支持,而且绝对没任何劣势,代码长度也不长(VC的语法复杂,按C程序员一般习惯做的话,代码长的反而会是VC)。产生误解的原因,是多数Delphi程序员是应用级的,而VC程序员是底层些的,应用程序员大多不太懂得底层代码的编写,只会搬控件、响应事件,以为底层的东西Delphi做不来。
3、对应用级的程序开发周期短——这也就是Borland一贯吹捧的“快速开发工具”的含义。正因为VCL的存在(封装了很多界面组件以及通讯、数据库、internet应用等很多后台功能),对高层应用不再需要一砖一瓦地受累,使开发周期缩短了很多倍。
单纯从技术角度说,编译器效率应该指编译出的代码是否短小/运行速度是否快,以及是否能用较少的源代码高效地实现复杂功能。前一方面Delphi并不比VC差,而比VB强,但并非一骑绝尘;后一方面则的确有一骑绝尘之象。
Delphi的致命缺点,其实不是技术——技术它是领先的,毫无疑问,问题是市场策略和公司实力(Borland只是家小公司),微软“携操作系统以令诸侯”,误导了众多软件开发公司,让它们以为微软的才正宗和好用,造成了事实上的VB,VC用户群远比Borland的庞大,源代码数量也一样是C/C++远远占优,而Borland的C++ Builder却开发得太晚难以形成市场优势。
概括来说,如果你要开发上层应用为主的程序,特别是数据库方面的程序,那么Delphi能让你省不少时间;而若开发底层些的软件,为能有更多相关代码可以参考利用,为能容易地招聘到更合适的程序员,以及为了代码维护方便,都适合用C/C++去做,当然,C++ Builder从技术上说是个不错的选择,只是用户群还太小。
Ⅱ 关于C语言预处理命令
第一句有问题。
比如
#ifndef WIN32
#endif printf("OK\n");
在这里,这个printf就不会被执行。也就是说, 一行中, 只能有一条预处理指令,
当编译的预处理阶段, 编译器识别了一条完整的预处理指令后,后面的所有东西他都不要了。
对于第二句,在函数里,我们是可以使用预处理指令的。
比如
void fun(void)
{
#ifdef WIN32
... // 对于windows系统环境的操作
#else
... // 对于windows以外的系统环境的操作
#endif /* WIN32 */
...
}
楼上的同学, 你是在哪儿本书上看的? 介绍一下呗
Ⅲ delphi编译器效率高到底是指什么
什么一骑绝尘,没有那么夸张啦,DELPHI发布DELPHI7的时候也没说效率比同期的VC要高,只说了效率和VC相当,比VB高30%左右而已。现在的DELPHI更没有看到这样的宣传语了。。。。
编译器效率一般是指编译链接后的原生代码(也就是机器码)的执行效率,直观上就是在同样的平台上DELPHI的项目运行起来要比vb快。
另外一个效率不常讲,但是也会被用来衡量编译器的忧劣,那就是对代码的优化是否合理。
编译器的效率高低是衡量编译器好坏的重要指标。
从运行期看,效率高的编译器编译出来的代码量小,运行速度快,
从设计期看,一个好的编译器可以完全让你不需要顾忌底层的实现。
但这是不可能的,BORLAND的产品不论是DELPHI还是BCB都对基本库中的例程做了内嵌汇编的实现,内嵌汇编意味这什么——我不信任你编译器能编译出比我这段汇编代码更优化的原生代码。这个比喻有些过分,但是换一个角度可以看出,编译器的设计目标就是编译出的代码能与汇编的执行速度相比。
另外
最近经常以效率标榜的是ICC,INTEL宣称ICC编译出的代码要比其他编译器的代码运行效率高出30%到50%。
再另
DELPHI其实是一个开发系统,他经过精心设计的类库结构对其应用的速度提升也有帮助。
Ⅳ 请问windows中mingw做出的程序速度会比VC++和BCB慢很多吗
不会。mingw/gcc的新版特别是4.7来编译的win程序,比如使用了winapi的程序,
执行速度丝毫不比vc++或bcb或intel
cc慢。
gcc4.7的优化已经非常强劲了。
mingw慢的是编译速度,比vc慢一个数量级。
mingw编译的程序的执行速度,丝毫不慢。
实践中像ffmpeg,ffdshow,mpc高清播放器这种视频编码和cpu媒体加速技术结合紧密程序,都用mingw编译。测试效果和vc++、icc的或优或或劣比较不超过2%,可以忽略。
vc6/98编译出的执行档肯定比gcc4.7要差些,但vc6的编译速度比gcc快
Ⅳ 如何提高BCB的编译速度
如果你的cpu够强你应该学会如何利用好它来加速你的代码编译速度,那么你怎么才能够最大限度让你的cpu发烧呢?
下面是一个对比:
比如我的cpu是i7 3770k,
编译cocos2d-x的libcocos2d工程:
不优化:
1>Time Elapsed 00:01:35.25
优化后:
1>Time Elapsed 00:00:21.66
效果显着!!!
参考网页:
Visual Studio 2010中C++并行构建调优(1)
http://developer.51cto.com/art/201003/189235.htm
Ⅵ 怎样解决软件启动CPU占用率瞬间变高,导致软件启动变慢的问题;C++ Builder(BCB) 开发的大概有30个FORM
CPU占用率高的九种可能
1、防杀毒软件造成故障
由于新版的KV、金山、瑞星都加入了对网页、插件、邮件的随机监控,无疑增大了系统负担。处理方式:基本上没有合理的处理方式,尽量使用最少的监控服务吧,者,升级你的硬件配备。
2、驱动没有经过认证,造成CPU资源占用100%
大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因。 处理方式:尤其是显卡驱动特别要注意,建议使用微软认证的或由官方发布的驱动,并且严格核对型号、版本。
3、病毒、木马造成
大量的蠕虫病毒在系统内部迅速复制,造成CPU占用资源率据高不下。解决办法:用可靠的杀毒软件彻底清理系统内存和本地硬盘,并且打开系统设置软件,察看有无异常启动的程序。经常性更新升级杀毒软件和防火墙,加强防毒意识,掌握正确的防杀毒知识。
4、控制面板—管理工具—服务—RISING REALTIME MONITOR SERVICE点鼠标右键,改为手动。
5、开始->;运行->;msconfig->;启动,关闭不必要的启动项,重启。
6、查看“svchost”进程。
svchost.exe是Windows XP系统的一个核心进程。svchost.exe不单单只出现在Windows XP中,在使用NT内核的Windows系统中都会有svchost.exe的存在。一般在Windows 2000中svchost.exe进程的数目为2个,而在Windows XP中svchost.exe进程的数目就上升到了4个及4个以上。
7、查看网络连接。主要是网卡。
8、查看网络连接
当安装了Windows XP的计算机做服务器的时候,收到端口 445 上的连接请求时,它将分配内存和少量地调配 CPU资源来为这些连接提供服务。当负荷过重的时候,CPU占用率可能过高,这是因为在工作项的数目和响应能力之间存在固有的权衡关系。你要确定合适的 MaxWorkItems 设置以提高系统响应能力。如果设置的值不正确,服务器的响应能力可能会受到影响,或者某个用户独占太多系统资源。
要解决此问题,我们可以通过修改注册表来解决:在注册表编辑器中依次展开[HKEY_LOCAL_ ]分支,在右侧窗口中新建一个名为“maxworkitems”的DWORD值。然后双击该值,在打开的窗口中键入下列数值并保存退出:
9、看看是不是Windows XP使用鼠标右键引起CPU占用100%
在资源管理器里面,当你右键点击一个目录或一个文件,你将有可能出现下面所列问题:
任何文件的拷贝操作在那个时间将有可能停止相应
网络连接速度将显着性的降低
所有的流输入/输出操作例如使用Windows Media Player听音乐将有可能是音乐失真成因:
当你在资源管理器里面右键点击一个文件或目录的时候,当快捷菜单显示的时候,CPU占用率将增加到100%,当你关闭快捷菜单的时候才返回正常水平。
解决方法:
文字较多,请看链接http://help.360.cn/index.php?c=help&a=topic&bid=5030806&tid=19726210
Ⅶ 请问windows中mingw做出的程序速度会比VC++和BCB慢很多吗
不会。mingw/gcc的新版特别是4.7来编译的win程序,比如使用了winapi的程序,
执行速度丝毫不比vc++或bcb或intel cc慢。 gcc4.7的优化已经非常强劲了。
mingw慢的是编译速度,比vc慢一个数量级。
mingw编译的程序的执行速度,丝毫不慢。
实践中像ffmpeg,ffdshow,mpc高清播放器这种视频编码和cpu媒体加速技术结合紧密程序,都用mingw编译。测试效果和vc++、icc的或优或或劣比较不超过2%,可以忽略。
vc6/98编译出的执行档肯定比gcc4.7要差些,但vc6的编译速度比gcc快
Ⅷ 推荐几个C++的编译器
visual c++ 功能强大,不过需要的容量也很大 ,
TC2.0也不错 很适合初学者 不过不是很标准 下面有它们的下载网站 你自己根据自己的情况,自己选择吧,我的建议是VC6.0
TC2.0的:
http://218.64.170.103/dload1.html?cid=
http://218.64.170.103/dload1.html?cid=
VC6.0 的:
http://218.64.170.103/dload1.html?cid=
http://218.64.170.103/dload1.html?cid=