__fastcall 与void __fastcall 有void与没有void有什么区别

pchddcat 2003-01-12 05:01:42
__fastcall 与void __fastcall 有void与没有void有什么区别
...全文
124 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
jingrunx 2003-01-13
  • 打赏
  • 举报
回复
c编译器都有__fastcall,表示用寄存器传送参数.
gfh21cn 2003-01-13
  • 打赏
  • 举报
回复
__fastcall 应该是把参数放到寄存器中以使调用速度更快
不过,上次我看到一个,好像是说这个东西是针对VCL的,自定义的结构可能没有这个优惠,呵呵
xzgyb 2003-01-13
  • 打赏
  • 举报
回复
__fastcall是把前三个参数依次放到EAX,EDX,ECX寄存器,其余的参数
放入堆栈
delphi默认的函数,过程的调用方式就是fastcall

c默认的是cdecl
lining_cumt985 2003-01-13
  • 打赏
  • 举报
回复
有void表示返回空值,
__fastcall 可以加快访问速度。
mee123456 2003-01-13
  • 打赏
  • 举报
回复
前三个参数放入寄存器,加快运行速度,对无参数的函数无影响,可以不用.
mee123456 2003-01-13
  • 打赏
  • 举报
回复
agree with gfh21cn
tjm 2003-01-13
  • 打赏
  • 举报
回复
__fastcall 是一种函数调用约定。主要是参数如何入栈,反回只在哪里,以及如何使用寄存器,都是编译器关心的事,如果你不打算玩汇编的话,就别管它了,在BCB中一律用__fastcall 就的了。
------------------
有区别,有void表示返回空值
------------------
这个空是什么意思?
cdws222 2003-01-12
  • 打赏
  • 举报
回复
void表示没有反回值
__fastcall会英文的都知道,只看它的字表意思就行了
seabc 2003-01-12
  • 打赏
  • 举报
回复
__fastcall 是什么意思?
mopyman 2003-01-12
  • 打赏
  • 举报
回复
有区别,有void表示返回空值
没有void表示根本就不返回值,主要用于构造函数,这是约定,构造函数不返回值
yuyangmain 2003-01-12
  • 打赏
  • 举报
回复
同上!
tjm 2003-01-12
  • 打赏
  • 举报
回复
没啥区别。不过要用于构造函数,就不能有VOID,这是约定。
95533 2003-01-12
  • 打赏
  • 举报
回复
void表示没有返回值,没有void默认返回int

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧