编译器错误 C2561
“identifier”:函数必须返回一个值
函数被声明为返回值,但函数定义不包含 return
语句。
此错误可能是由不正确的函数原型引起的:
如果函数不返回值,则使用返回类型 void 声明函数。
检查函数的所有可能分支是否返回原型中声明的类型的值。
包含将返回值存储在
AX
寄存器中的内联汇编例程的 C++ 函数可能需要 return 语句。 将AX
中的值复制到临时变量并从函数中返回该变量。
以下示例生成 C2561:
// C2561.cpp
int Test(int x) {
if (x) {
return; // C2561
// try the following line instead
// return 1;
}
return 0;
}
int main() {
Test(1);
}