Когда я пишу функцию определения пользователя, должен ли я вернуть 0, если функция выполнена успешно или имеет значение, отличное от нуля?Кодирующая парадигма: должен ли я вернуться 0, если функция успешна?
Мне лично нравится возвращать 0, если моя функция успешна, но я всегда вижу обработку ошибок больше, чем (!var)
и меньше, как (var != NULL)
. Так что было бы лучше вернуть некоторую ценность, например, 1
, как известно, TRUE
, даже в небулевой ситуации?
Что предлагает переполнение стека?
Причина, почему я спрашиваю, потому что я написал, не булеву оболочку для WINAPI BOOL CreateProcessW
и выбросил мой код, потому что я был в обертке returning 0
и прежде, чем я проверял, если TRUE
.
Я думаю, что этот вопрос по своей сути субъективен. Я бы предложил просто использовать любое соглашение, которое будет использоваться остальной частью проекта, над которым вы работаете. – templatetypedef
Проголосовало за закрытие; Очень субъективно. –