我发现自己在写很多这样的代码: int myFunction(Person* person) { int personIsValid = !(person==NULL); if (personIsValid) { // do some stuff; might be lengthy int myresult = whatever; return myResult; } else { return -1; } } 它可能会变得非常混乱,特别是如果涉及多个检查。在这种情况下,我尝试了多种样式,例如: int netWorth(Person* person) { if (Person==NULL) { return -1; } if (!(person->isAlive)) { return -1; } int …