catch 引用为什么能捕捉右值的异常

追问:#include<iostream>
using namespace std;
int main()
{
	int a=10;
	try
	{
		throw 10;
	}
	catch(int & b)
	{
		cout<<b<<endl; 
	}
	return 0;
 } //int  & b 不是左值引用吗? 左值只引用不是之能使变量吗?  10 是常量不能改变 为什么能捕获 常量的异常

 

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^