在返回非void的函数中没有返回语句警告

问题描述 投票:0回答:2

这是我的代码行,我得到一个警告说:"在函数返回非void中没有返回语句警告 "我已经声明total为:静态int total。

int Rooms::getTotalEmptyRooms() {
    return total;
}
int Rooms::setTotalEmptyRooms(int i) { //warning here
    total = i;
}

有什么建议可以让我摆脱这个警告吗?

c++ oop static
2个回答
2
投票

当你把它声明为一个 ,它必须有 返回 与函数内的in。

要么将头部改为

void Rooms::setTotalEmptyRooms(int i) {
    total = i;
}

或者让它返回一些东西,比如

int Rooms::setTotalEmptyRooms(int i) {
    total = i;
    return total;
}

0
投票

你需要在函数中加入返回语句,或者将签名改为 void

int Rooms::setTotalEmptyRooms(int i)
{
    total = i;
    return somthing;
}

void Rooms::setTotalEmptyRooms(int i)
{
        total = i;
}

0
投票

你的函数被声明为返回 int. 但没有 return 的函数中的语句。

© www.soinside.com 2019 - 2024. All rights reserved.