Open alexey-malov opened 9 years ago
boost::optional<int> StrToInt(char *const pStr) { char *pEndPoint; int num = strtol(pStr, &pEndPoint, 10); if ((*pStr == '\0') || (*pEndPoint != '\0')) { cout << MSG_NOT_INTEGER; return boost::none; } return num; }
В служебных функциях лучше не осуществлять вывод в стандартный поток вывода. Если хочется сообщить об ошибке, то либо бросать исключение, либо предусмотреть спец. код возврата (optional это уже позволяет сделать) и отреагировать во внешней функции
30*0,9=27
В служебных функциях лучше не осуществлять вывод в стандартный поток вывода. Если хочется сообщить об ошибке, то либо бросать исключение, либо предусмотреть спец. код возврата (optional это уже позволяет сделать) и отреагировать во внешней функции