Я пишу небольшую программу на С++ 11 и действительно использую исключения для одного из первых.
У меня вопрос о том, как эффективно поймать исключения, и после некоторых поисковых запросов у меня все еще нет ответа.
Вот вопрос: Чем эффективнее (или рекомендуется) между улавливанием исключения ссылкой (const?) Lvalue или ссылкой (const?) Rvalue?
В коде это дает:
1)
try { throw std::exception{"what"}; }
catch (std::exception& ex) {}
2)
try { throw std::exception{"what"}; }
catch (const std::exception& ex) {}
3)
try { throw std::exception{"what"}; }
catch (std::exception&& ex) {}
4)
try { throw std::exception{"what"}; }
catch (const std::exception&& ex) {}