Каковы лучшие практики для написания функций C или C ++, которые возвращают int, представляющий код состояния?
В частности, я хочу знать об использовании клиента, но приветствуются и другие советы.
Например, могу ли я написать что-то вроде этого:
int foo() {
return 0; // because everything was cool
}
А потом использовать это так?
if (foo()) {
// what to do if false, e.g. non-zero, e.g. not OK
} else {
// what to do if true, e.g. zero, e.g. OK
}
Это должно работать, потому что лучшие практики обычно предписывают, чтобы код состояния 0
означал, что все было в порядке, а также 0
означает false
в логическом выражении.
Однако, это не было бы хорошо, верно:
if (!foo()) {
// what to do if true
} else {
// what to do if false
}