编译器错误 C2494
“keyword”不能从筛选器表达式或 __finally/finally 块内调用
不能在 __finally
或 finally
块中使用 keyword。
以下示例生成 C2494:
// C2494.cpp
#include <malloc.h>
int main() {
__try {}
__except ( _alloca(100), 1 ) {} // C2494
__try {}
__finally {
_alloca(100); // C2494
}
}
使用“/clr”时,也可能会发生 C2494。
// C2494b.cpp
// compile with: /clr
#include <malloc.h>
int main() {
char * buf;
try {}
catch (char * buf2) {}
finally {
_alloca(100); // C2494
}
}