I'm working with existing code that returns a reference, something like this:
int &func(){ static int i = 5; return i;}I would like to return an error case as "NULL" but of course NULL doesn't work in a return-by-reference function. If this were returning a pointer I might do this:
int *func(){ static int i = 5; if (!good) return NULL; else return &i;}Besides converting to a pointer-based return value, is there a best practice for returning a failure state?