【发布时间】:2011-02-17 15:30:34
【问题描述】:
对于用裸函数声明的函数 属性,编译器生成代码 没有序言和结语代码。你 可以使用此功能编写自己的 序言/结语代码序列使用 内联汇编代码。裸函数 在写作中特别有用 虚拟设备驱动程序。
__declspec(naked) declarator
什么是“序言和结语代码”。我看到一个用 C 代码编写的库,只使用 libc 在设备或固件上运行。它调用函数没有问题,裸关键字有什么作用,为什么需要它?
注意:我不确定这些库中的函数使用什么调用约定。
【问题讨论】:
-
请注意,它不是 C 或 C++ 关键字:它是 Visual C++ 提供的语言扩展(它也不是 Visual C++ 中的关键字,它是一个属性)。 @Daniel 提供的链接对序言和尾声提供了不错的解释。可以在here 找到该页面的最新版本(至少乍一看是相同的)。
标签: c++ c visual-c++