Каковы лучшие практики для написания функций 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
}