Можно ли назначить и вернуть переменную одновременно? - PullRequest
0 голосов
/ 06 апреля 2020

Допустим, я пишу такую ​​функцию:

bool Ship::processHit()
{
    health--;
    return !health = sunk;
}

Будет ли это устанавливать sunk в то же значение, что и !health?

1 Ответ

2 голосов
/ 06 апреля 2020
bool Ship::processHit()
{
    health--;
    return !health = sunk;
}

Вы не можете сделать это (при условии, что health не является экземпляром определенного пользователем типа данных с необходимыми перегрузками операторов).

Будет ли этот параметр установлен на тот же самый Значение как! здоровье?

Нет, вы на самом деле делаете обратное и предлагаете больше ошибок. !health не является lvalue, так что вы присваиваете sunk для!?

Можно ли назначить переменную и вернуть одновременно?

Да .

Заменить return !health = sunk;

на return sunk = !health;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...