Erro do compilador C2561
'identifier': a função precisa retornar um valor
A função foi declarada como retornando um valor, mas a definição da função não contém uma instrução return
.
Esse erro pode ser causado por um protótipo de função incorreto:
Se a função não retornar um valor, declare a função com o tipo de retorno nulo.
Verifique se todos os branches possíveis da função retornam um valor do tipo declarado no protótipo.
As funções C++ que contêm rotinas de assembly embutidas que armazenam o valor retornado no registro
AX
podem precisar de uma instrução de retorno. Copie o valor emAX
para uma variável temporária e retorne essa variável da função.
O seguinte exemplo gera C2561:
// C2561.cpp
int Test(int x) {
if (x) {
return; // C2561
// try the following line instead
// return 1;
}
return 0;
}
int main() {
Test(1);
}