我保留了一些代码,有如下行:
#pragma AVRT_CODE_BEGIN
//some code
#pragma AVRT_CODE_END
我无法理解他们,
我用Google搜索了,但除了代码示例之外什么都没得到:Click me
你知道AVRT_CODE_BEGIN和AVRT_CODE_END是什么意思吗?
请告诉我。非常感谢。
答案 0 :(得分:0)
有一些编译器指令可以将代码发送到特定的链接器段,而不是默认的链接器段,用于使用AVRT库进行音频处理。它似乎是Microsoft的内部功能。这些段可能存在优化或安全性。我发现这个头文件显示了含义:
// 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"))