2013年3月5日
摘要: 从语法上看,在函数里声明参数与在catch子句中声明参数是一样的,catch里的参数可以是值类型,引用类型,指针类型。例如:try{ .....}catch(A a){}catch(B& b){}catch(C* c){}尽管表面是它们是一样的,但是编译器对二者的处理却又很大的不同。调用函数时,程序的控制权最终还会返回到函数的调用处,但是抛出一个异常时,控制权永远不会回到抛出异常的地方。class A;void func_throw(){ A a; throw a; //抛出的是a的拷贝,拷贝到一个临时对象里}try{ func_throw();}catch(A a) //临时对象的拷 阅读全文
posted @ 2013-03-05 16:07 侠骨豪情 阅读(818) 评论(0) 推荐(0) 编辑