noreturn

Microsoft 专用

此 __declspec 属性通知编译器函数不返回。 因此,编译器知道在调用后的代码。 declspec(noreturn) 函数不可访问的。

如果编译器找到与不返回值的控件路径的函数,则会生成一个警告 C4715 () 或错误消息 (C2202)。 如果控件路径不能达到由于不返回的功能,您可以使用 declspec(noreturn) 阻止此警告或错误。

备注

添加 declspec(noreturn) 到应返回的函数会导致未定义的行为。

示例

在下面的示例中,不包含子句返回一个语句。 声明为 declspec(noreturn) 的 fatal 避免错误或警告的信息。

// noreturn2.cpp
__declspec(noreturn) extern void fatal () {}

int main() {
   if(1)
     return 1;
   else if(0)
     return 0;
   else
     fatal();
}

请参见

参考

__declspec

C++关键字