lexical_cast int to string

前端 未结 3 1522
耶瑟儿~
耶瑟儿~ 2021-02-19 16:22

Is it safe to ignore exception of boost::lexical_cast when converting int to std::string?

相关标签:
3条回答
  • 2021-02-19 17:01

    If you "ignore" an exception it will propagate back up the call stack until it is caught elsewhere, or it terminates the program, the point being you can safely not catch exceptions without worrying about you program continuing and doing unsafe/unknown things (as long as a "crash" to command prompt is acceptable error behaviour or you have some other way of dealing with unknown exceptions).

    Unfortunately exception stack traces aren't so easy to get in C++, so creating useful error messages when exceptions aren't caught locally isn't always easy.

    0 讨论(0)
  • 2021-02-19 17:15

    Exception raised by lexical cast when converting an int to std::string are not associated to the conversion, but to resource unavailable. So you can ignore this in the same way you ignore the exception bad_alloc raised by operator new.

    0 讨论(0)
  • 2021-02-19 17:15

    As you say, I don't believe the cast can fail for the numerical types for conversion reasons - it can still fail because the string cannot be allocated, of course, but people don't normally catch that error except at the highest level of their code.

    0 讨论(0)
提交回复
热议问题