Is it ok to just call throw; from constructor if something goes awry, and you have no idea how to recover?
The idea is to let the app crash with a dump, as the state is unknown. Or should you always specify an argument?
From MSDN I only found that it rethrows if there is no argument, but no idea what happens if there is no initial exception to rethrow.
If there’s no exception currently being processed
throw;will lead toterminate()being called immediately and that will end your program abnormally. That is not very convenient – you’ll have less information about what happened compared to throwing a meaningful exception. You could have thrown a meaningful exception, catch it at the top level (likemain()), write some diagnostics and then end the program.