【发布时间】:2014-03-19 04:21:27
【问题描述】:
这是一个 c++ 函数:
int FuncWithoutReturn()
{
int var = 10;
++var;
// No return value here !!!
}
在 MSVC 中,编译器产生错误:
错误 C4716:“FuncWithoutReturn”:必须返回一个值。
但在 XCode 5 中,编译器只是发出警告:
控制到达非空函数的结尾
如果我幸运的话,在运行时,应用程序会崩溃。我知道这是一个愚蠢的错误,但编译器首先产生错误会很好。
只是想知道有人知道为什么 XCode 认为这是警告而不是错误。
【问题讨论】:
-
感谢您的回答,但是是否有任何情况下故意缺少返回值?我的意思是我的情况,那是一个错误。但是由于编译器默认认为错误是警告。我想一定是有原因的,WHY...