3

我维护了一些代码,例如:

#pragma AVRT_CODE_BEGIN   
//some code
#pragma AVRT_CODE_END

我无法理解它们,
我用谷歌搜索了它,但除了代码示例外一无所获:点击我
你知道 AVRT_CODE_BEGIN 和 AVRT_CODE_END 是什么意思吗?
请告诉我。非常感谢。

4

1 回答 1

0

有编译器指令可以将代码发送到特定的链接器段,而不是默认的链接器段,用于使用 AVRT 库进行音频处理。它似乎是 Microsoft 的内部功能。这些段的存在可能是为了优化或安全。我发现这个头文件显示了含义:

ftp://ns432777.ip-37-59-27.eu/Program%20Files%20%28x86%29/Windows%20Kits/8.0/Include/um/baseaudioprocessingobject.h

// These are copied out of the old AvRt.h file.
#define AVRT_CODE_BEGIN   code_seg( push, "RT_CODE" )
#define AVRT_DATA_BEGIN   data_seg( push, "RT_DATA" )
#define AVRT_BSS_BEGIN    bss_seg( push, "RT_BSS" )
#define AVRT_CONST_BEGIN  const_seg( push, "RT_CONST" )
#define AVRT_VTABLES_BEGIN AVRT_CONST_BEGIN
#define AVRT_CODE_END   code_seg( pop )
#define AVRT_DATA_END   data_seg( pop )
#define AVRT_BSS_END    bss_seg( pop )
#define AVRT_CONST_END  const_seg( pop )
#define AVRT_VTABLES_END AVRT_CONST_END
#define AVRT_DATA __declspec(allocate("RT_DATA"))
#define AVRT_BSS __declspec(allocate("RT_BSS"))
#define AVRT_CONST __declspec(allocate("RT_CONST"))
于 2015-05-11T02:31:31.620 回答