社区
C++ Builder
帖子详情
c++builder程序的速度
begwolf
2000-06-03 04:03:00
VCL是pascal语言写的,这是否会影响所编程序的速度,尤其是数据库和网络程序?这种影响大不大?与VC相比如何?
...全文
312
7
打赏
收藏
c++builder程序的速度
VCL是pascal语言写的,这是否会影响所编程序的速度,尤其是数据库和网络程序?这种影响大不大?与VC相比如何?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
darkstar
2000-06-06
打赏
举报
回复
VC 6
?a@@YAHH@Z PROC NEAR ; a,
; Line 2
push ebp
mov ebp, esp
sub esp, 72 ; 00000048H
push ebx
push esi
push edi
lea edi, DWORD PTR [ebp-72]
mov ecx, 18 ; 00000012H
mov eax, -858993460 ; ccccccccH
rep stosd
; Line 3
mov DWORD PTR _a$[ebp], 0
; Line 4
mov DWORD PTR _i$[ebp], 0
jmp SHORT $L219
$L220:
mov eax, DWORD PTR _i$[ebp]
add eax, 1
mov DWORD PTR _i$[ebp], eax
$L219:
mov ecx, DWORD PTR _i$[ebp]
cmp ecx, DWORD PTR _n$[ebp]
jge SHORT $L221
; Line 6
mov edx, DWORD PTR _a$[ebp]
add edx, DWORD PTR _i$[ebp]
mov DWORD PTR _a$[ebp], edx
; Line 7
jmp SHORT $L220
$L221:
; Line 8
mov eax, DWORD PTR _a$[ebp]
; Line 9
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0
?a@@YAHH@Z ENDP ; a
halfdream
2000-06-06
打赏
举报
回复
呵呵我建议举几个例子来看看:
这儿有一段程序:
int a(int n)
{
int a=0;
for(int i=0;i<n;i++)
{
a+=i;
}
return a;
}
下面是用BCB4 编译产生的汇编代码:
.......................................
push ebp
mov ebp,esp
mov ecx,dword ptr [ebp+8]
@1:
xor edx,edx
@2:
xor eax,eax
cmp ecx,eax
jle short @4
@3:
add edx,eax
@5:
inc eax
cmp ecx,eax
jg short @3
@4:
mov eax,edx
@8:
@7:
pop ebp
ret
.....................................
现在我手边没有VC .
希望哪位感兴趣,把相应的汇编代码贴上来.
因为实际的问题是比较复杂的.这样的比较也许意思不大.
alexela
2000-06-06
打赏
举报
回复
C++Builder语言的编译器是很不错的。用C++Builder编程,主要是优化代码,灵活性强。我不同意KXY 的观点。用C++Builder 编数据库和网络程序,由于其采用C代码,其效率和速度以及优化性,都远好于POWERBULDER和JAVA。这一点你用了就会知道。
C++Builder 编译器是一种优化编译器,并不是单纯的C编译器。由于采用了C++,对程序进行了有效的数据封装,其安全性是C、VC所不能比的。可能程序运用继承,代码增多,但其速度和执行效率不会落下。这点如果你了解C++的多态性就会明白。
kxy
2000-06-03
打赏
举报
回复
最后的程序的执行速度和编译器的好坏有关,和语法无关.
不管语法是C的还是Pascal的.
打一个比方
delphi :
function Add(a,b:integer) : integer;
begin
result := a+b;
end;
C :
int add(int a,int b)
{
return a+b;
}
如果C的编译器比较差,编译出来的汇编码是(我只是打比方,我的汇编比较差)
mov ecx,eax
mov ebx,edx
add ebx , ecx
mov eax,ebx
//
如果pascal的编译器比教好编译出来的汇编码只要一条
add eax,edx
//
Borland是做编译器起家的,他的编译器还是不错的,可惜windows是M$的
M$的编译器可能比Borland的要好一点点.
halfdream
2000-06-03
打赏
举报
回复
VCL 做的事比较MFC要多一些。
不过速度损失非常有限。
而且它避免了很多人为而造成的速度变慢因素,VC则不然。
至于网络程序,两者速度为什么会有差别?不过开发速度倒很有差别。
至于数据库程序,BCB可以选择访问数据库的方法多种多样,
与VC同样方式访问数据库的时候, 两者也并没有什么差别。
kxy
2000-06-03
打赏
举报
回复
比VC要稍微慢一点,
pascal最后也是编译成机器原生码.
windows是M$的,VC也是M$的,所以VC的原生码.可能要快一些.
Wilbur
2000-06-03
打赏
举报
回复
汇编语言的程序一定比basic程序快?
C++ Builder 50经典入门
Borland
C++Builder
5.0 (简介) Borland C++Bilder 5.0是Interprise(Borland)公司推出的基于C++ 语言的快速应用
程序
开发(Rapid Application Development,RAD)工具,它是最先进的开发应用
程序
的组件思想和面向对象的高效语言C++融合的产物。
C++Builder
充分利用了已经发展成熟的Delphi 的可视化组件库(Visual Component Library,VCL),吸收了Borland C++ 5.0 这个优秀编译器的诸多优点。
C++Builder
结合了先进的基于组件的
程序
设计技术,成熟的可视化组件库和优秀编译器,调试器。发展到5.0版本,
C++Builder
已经成为一个非常成熟的可视化应用
程序
开发工具,功能强大而且效率高。
C++Builder
的特色: 1.
C++Builder
是高性能的C++开发工具
C++Builder
是基于C++的,它具有高速的编译,连接和执行
速度
。同时,
C++Builder
具有双编译器引擎,不仅可以编译C/C++
程序
,还能编译Object Pascal语言
程序
。 2.
C++Builder
是优秀的可视化应用
程序
开发工具
C++Builder
是一完善的可视化应用
程序
开发工具,使
程序
员从繁重的代码编写中解放出来,使他们能将注意力重点放在
程序
的设计上,而不是简单的重复的劳动中。同时,它提供的完全可视的
程序
界面开发工具,从而使
程序
员对开发工具的学习周期大大缩短。 3.
C++Builder
具有强大的数据库应用
程序
开发功能
C++Builder
提供了强大的数据库处理功能,它使的
程序
员不用写一行代码就能开发出功能强大的数据库应用
程序
,这些主要依赖于
C++Builder
众多的数据库感知控件和底层的BDE数据库引擎。
C++Builder
除了支持MicroSoft的ADO(Active Data Object)数据库连接技术,还提供了一种自己开发的成熟的数据库连接技术——BDE(Borland Database Engine)数据库引擎。 4.
C++Builder
具有强大的网络编程能力
C++Builder
具有众多的Internet应用
程序
开发控件,如WebBroker,CppWebBroswer,WinSocks等,它们基本含盖了Internet应用的全部功能,利用它们
程序
员可以方便地建立自己地Internet应用
程序
。
使用
C++Builder
控件进行FTP
程序
设计
TCP控件可以建立一个FTP的连接,然后使用分别建立多个线程,每个线程作为一个客户端,在FTP服务器上下载文件。这样可以加快下载
速度
。 在建立一个FTP连接时,先把使用一个TCP控件连接远端的21号端口,在发出端口命令。当查找到所下载的文件后,再分成多个线程对一个文件进行下载。
C++ Builder写的ZEC 落体弹跳的小球 v0.5.bin
C++ Builder写的ZEC 落体弹跳的小球 v0.5.bin 小球从顶部落体后,加速下落,碰到地面反弹,不断地落体弹跳,高度越来越低,最后
速度
为零,停止弹跳。
程序
使用简单算法来模拟落体弹跳,没有使用物理公式计算。
c++ 简介
前 言 2000年上半年,Inprise公司(原Borland公司)推出了
C++Builder
的最新版本:
C++Builder
5。
C++Builder
5继承了以前版本的优点,并在此基础上增添了许多新的功能,比如在ADO、数据模块设计、IBX、MIDAS、CORBA、
程序
调试、VCL、窗体框架和桌面定义等方面都增强了许多,可以极大地提高软件系统的设计、管理和开发的
速度
。
c++ 发送https POST请求并获取返回数据(包含appKey与appSecret)
c++ 发送https POST请求并获取返回数据(包含appKey与appSecret)
C++ Builder
13,824
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章