gpt4 book ai didi

c++ - 回调函数和常规函数有什么区别?

转载 作者:行者123 更新时间:2023-11-30 02:10:49 25 4
gpt4 key购买 nike

好的,我将给出两个函数示例,使用 CALLBACK 和常规函数。
注意:这些例子不是我写的。

常规函数

int sumExample (int a, int b)
{
return a + b;
}
int main()
{
int = sumExample(1, 3);
cout >> int;
return 0;
}

使用 _stdcall 的函数

int __stdcall sumExample (int a, int b);

有什么区别?
注意:我不确定调用约定是如何工作的,一个例子会有所帮助!

最佳答案

基本上,调用约定指定了如何调用函数的实现细节。大多数库使用标准 C 调用约定 - __cdecl。然而,WinAPI 需要 __stdcall。您只需要了解有关调用约定的两件事:它们必须匹配,例如,您不能转换 void(*)(int, int),它隐含为 void (__cdecl *)(int, int),到 void(__stdcall *)(int, int),默认为 __cdeclCALLBACK 只是一个 WinAPI #define,因此他们可以根据需要进行更改。

关于c++ - 回调函数和常规函数有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4293509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com