我正在用C++ 11編寫一個小程序,並且首次真正使用異常。關於捕獲異常良好做法
我有一個關於如何有效地捕捉異常的問題,並經過一些谷歌搜索後,我仍然沒有答案。
這裏是一個問題: 通過(const?)左值引用或(const?)右值引用捕獲異常之間更高效(或推薦)是什麼?
在代碼本給予:
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) {}
通過右值引用捕獲甚至是非法http://stackoverflow.com/q/21977340/5447906 –