Catching exceptions by reference

Why should exceptions always be caught by reference (catch(const std::exception& e)) rather than by value?