Dato che tutto il resto è uguale, e non ci sono standard di codifica che definiscono l'approccio migliore, quale sarebbe il modo raccomandato in C ++ per verificare che esista un valore e restituirlo se lo fa?
Ad esempio, qualcosa come una di queste dichiarazioni:
bool getMethod(double& ret);
double getMethod(bool& ok);
void getMethod(bool& ok, double& ret);
pair<bool, double> getMethod();
bool checkMethod(); // eg if (checkMethod())
double getMethod(); // result = getMethod();
o qualcos'altro, come restituire una struct
Il valore può esistere circa il 50% delle volte.
Il codice esistente fa già un sacco dell'ultimo metodo, ad esempio utilizzando un metodo checkMethod (), ma mi chiedevo se fosse davvero un modo efficace per farlo - tramite due chiamate (metà del tempo).